The cfnroot approximation technique used for non-half powers is absurdly inefficient. For example, cf(2^(1/10)),cflength:4 takes 56 sec (you can see why by tracing ratsimp with cflength:2), whereas cf(bfloat(2^(1/10))) gives 17 terms in < 1 ms.
Maxima version: "5.41.0a_dirty"
Maxima build date: "2017-10-24 09:10:17"
Host type: "x86_64-w64-mingw32"
Lisp implementation type: "SBCL"
Lisp implementation version: "1.3.18"
The fix is to remove the "ratsimp" from cflength.
Of course, the function is still unreliable, since it relies on approximation in the floor function, e.g.,
cf(2^(1/10)),cflength:28 => expt: undefined: 0 to a negative exponent.
A more reliable approximation is by using bfloat, e.g., cf(bfloat(2^(1/10))),fpprec:100; But you can't know in advance how many terms of cf that will give you.