Sorry for the delay; still playing catch-up…
No guarantee that the issue has anything to do with the comment linked by @jdtournier; that’s probably a vestigial remnant of development work at some point.
The main work being done in between the end of the “outputting beta coefficients…” line and the appearance of the “running permutations” line is the pre-computation of the default permutation. This involves fitting the full GLM (which is a different piece of code to that used to produce the basic properties already completed) and performing statistical enhancement. This section is also constrained to be single-threaded, which is why it can seem to be “slower” compared to how the command progresses through the permutation testing.
In my own experience, hanging at this point has most frequently been due to extreme t-values. CFE works by integrating from (by default) 0.1 to the maximum t-value in 0.1 increments. If a single fixel in your image has an erroneously large t-value, that numerical integration can take prohibitively long. By “erroneously large”, I don’t mean 10, I mean 10^30. (Yes, this can happen if mistakes are made…)
I would suggest running
mrstats on those fixel data files that have been successfully generated in your output fixel directory. If that doesn’t provide insight, we’ll need to look closer…
While running low on RAM can slow this code down as well, I would expect RAM issues to result in hanging earlier at the “pre-computing fixel-fixel connectivity” step; so I don’t think reducing the number of fixels will help, unless by doing so some “problematic” fixel gets excluded from the analysis.