Hi authors of SPM8,
I've noticed a horrendous performance hit when accessing time-series data
when that data sits on a NAS device.
Let's call it an SPM8 x NAS interaction.
If I read the 4D dataset with spm_read_vols from our 48TB NAS it takes
about 250 seconds, however if I read that 4D dataset with some homegrown
matlab code to just open the file, skip over the header and read the data
in, then it only takes about 2.5 seconds, or 100 times shorter! This is on
the exact same file on the exact same NAS device. When I run spm_read_vols
through the system profiler of course the time is pretty much evenly split
between spm_matrix and spm_slice_vol. The impact on our throughput is
high, that is processes are being IO limited when indeed they should not
be. In fact for some custom functional connectivity processing I forego
the use of the spm_read_vols to get my time-series data.
Can I ask the authors to examine writing a different piece of code for
reading time-series data that could jump around the spm_slice_vol and
spm_matrix given that the data has to already be resliced on disk and thus
the application of spm_matrix maybe is redundant, if having statistics
performed? Given that NAS devices are becoming more popular it seems that
this will be having an impact for others eventually.
I've seen this on both linux and mac os x systems running both matlab 2007
and matlab 2009.
Have others noticed this issue?
-Robert Welsh
**********************************************************
Electronic Mail is not secure, may not be read every day, and should not be used for urgent or sensitive issues
|