My SPM2 smoothing step is taking a long time. Is there any practical way to
speed this up without moving the files to be smoothed to a separate
subdirectory?
I am running on a 64-bit Linux system with SPM2 but also find a similar
slow-down with SPM5 on the same system. In addition, the slow-down occurs
on my Windows PC with both SPM2 and SPM5. I'm running MATLAB 7.5 everywhere.
For SPM2 on 64-bit Linux, in a directory with 460 volumes of 17 slices each,
the smoothing of waf*.img files starts out taking less than 0.5 seconds per
volume but is consuming 1.5 seconds each by the end of the file list.
If only 60 of the waf*.img/hdr file pairs are moved to a separate directory,
each volume there can be smoothed in just 0.14 seconds each.
In practice, when running with 1380 volumes already in the same directory
(460 original f*.img files)
(460 realigned af*.img files)
(460 normalized waf*.img files)
smoothing starts out at around 5 seconds per volume, increasing for each
volume to 8.7 seconds for the last volume, taking 50 minutes for the whole
smoothing step. Calling spm_smooth in a loop via the command line takes a
similar amount of time as when using the SPM2 GUI.
On my PC, with only 460 waf*.img files in a directory, SPM2 begins smoothing
at 0.6 seconds per volume, increasing to 1.9 seconds for the last volume.
Also on the PC with only 460 waf*.img files in a directory, SPM5 begins
smoothing at 1.0 seconds per volume, increasing to 1.9 seconds for the last
volume.
Is it a general aspect of SPM or MATLAB 7.5 i/o that, the more files present
in a directory, the slower all subsequent read/write? Can anything be done
to make the smoothing go faster?
Thanks for any suggestions.
Kathy Pearson
UAB Psychology Dept.
|