Fixelcfestats and memory problems


#1

Hi all,

I’m performing the FBA analysis on my sample (25 controls and 25 patients) but when I run the fixelcfestats command it consumes all my memory system (24 GB) at this stage:

fixelcfestats fd file_fd.txt design_matrix1.txt contrast_vec1.txt tracks_5M_SIFT.tck stats_fd

fixelcfestats: number of fixels: 512515
fixelcfestats: [WARNING] invalid voxel sizes - resetting to sane defaults
fixelcfestats: [WARNING] transform matrix contains invalid entries - resetting to sane defaults
fixelcfestats: [100%] preloading data for "fd/directions.mif"
fixelcfestats: [100%] loading template fixel directions and positions
fixelcfestats: [done] validating input files
fixelcfestats: [ 6%] pre-computing fixel-fixel connectivity...

So I killed the process. Then I tried setting -notest option but nothing changed.

What could I do to run successfully this command?

Cheers.-


#2

Yes, the fixelcfestats command does require a very large memory system – see the warning in the corresponding section of the documentation. This is because it needs to build and hold the fixel-to-fixel connectivity matrix, which is huge. You’ll find recommendations as to how to deal with this in the same warning.

Another thing to check is whether the group tractography is too dense – see the warning in that section of the documentation. If you run tckedit -number 200k on your tractography to pull out the first 200k streamlines and display that in MRView, you’ll be able to check whether the tractography is sensible: it covers all the white matter regions that you’re interested in, but doesn’t venture into or through grey matter regions, etc. If you find the tractography covers too much and includes funny connections that shouldn’t be there, try slightly increasing the -cutoff threshold in that tckgen command, until you get satisfactory results. This will promote sparsity in the fixel-to-fixel connectivity matrix, so it’ll take up less RAM.

But you may find that the simplest and least problematic solution will simply be to get more RAM…