I think the problem is that the 2mm fsaverage volume is 76 76 93 = 537168 voxels. Eventhough most of these are 0s, the full 4D volume (after decompressing) must be represented at some point as it gets read in and written out.
doug

On 6/15/13 11:56 AM, Marcel Falkiewicz wrote:
Hello,
 actually, I've noticed something weird. The surface analysis runs correctly with ~150k in the mask. However, there are only ~50k voxels in the subcortical mask, so it should require 3x less memory to process, but it crashes with OUT OF MEMORY message.


Best regards,
 Marcel


2013/6/13 Douglas Greve <greve@nmr.mgh.harvard.edu>

Good idea. Actually, I need to fix selxavg3-sess to handle this better. When I wrote it, I never tested it on runs with so many time points, but they are becoming more common.

doug




On 6/13/13 5:26 PM, Marcel Falkiewicz wrote:
Thanks Jacek for the advice, I'll try to upgrade to newer MATLAB version, maybe it will manage the memory better. I've got 64 bit versions of everything, so this doesn't really help. I've never considered a 800 timepoint timeseries as a large dataset, other software packages do not seem to be bothered by this, even SPM which is Matlab-based. Doug, I will try to split the dataset as you advised, it will help for sure, but given the fact that this problem occurs often, maybe dataset splitting should be automated in fsfast in order to avoid such problems in the future. Thanks again for your help guys.


2013/6/13 Jonca, Jacek <jacek.jonca@ttu.edu>

In the past (for other people) selxavg3 failed with as much as 16GBs although as always much depends on your dataset. Most likely the problem is not with the fact that you don’t have enough memory but rather that not enough memory is being allocated to Matlab. Are you running it on a 64-bit machine with 64-bit version of Ubuntu installed and 64-bit version of Matlab? If not this may be your best bet right now. In addition, as always having most up-to-date version of both Ubuntu and Matlab may be helpful as well. I noticed that you are running R2011a, that is a tad bit old. I think that R2013a has been out for some time.

 

Do you have access to a cluster where you can deploy freesurfer, Sunsite? In my experience those tended to work better for running computationally demanding analyses. I simply rsynced my remote directory with my laptop to examine results from the laptop but run the actual anayses on the mainframe.

 

Cheers,

Jacek


 

    cid:image003.png@01CC924F.6F547760

 

Jacek Jońca-Jasiński, Ph.D.    |    The Graduate School    |    Texas Tech University

Administration Bldg 327 / 40D  |    2625 Memorial Circle  |    Box 1030   |   Lubbock, TX 79409-1030

ph.: 806.834.3348    |    fax: 806.742.4038    |    http://www.gradschool.ttu.edu

Capture

 

 

From: freesurfer-bounces@nmr.mgh.harvard.edu [mailto:freesurfer-bounces@nmr.mgh.harvard.edu] On Behalf Of Marcel Falkiewicz
Sent: Thursday, June 13, 2013 1:19 PM
To: freesurfer@nmr.mgh.harvard.edu
Subject: [Freesurfer] Fwd: Out of memory problem during selxavg3-sess

 

 

Hello,

 I know this problem has been discussed earlier, but I think in my case the source of the problem might be quite different. I'm running FS 5.3.0 and MATLAB R2011a on Ubuntu machine with 12 GB RAM. selxavg3-sess runs perfectly for both hemis, but I get the following error when trying to run it on subcortical volume:

$Id: fast_selxavg3.m,v 1.100.2.2 2012/11/30 18:40:38 greve Exp $
/home/marcel/freesurfer/fsfast/toolbox/fast_selxavg3.m
/home/marcel/freesurfer/fsfast/toolbox/fast_ldanaflac.m
/home/marcel/freesurfer/matlab/MRIread.m
-------------------------
outtop = /media/2TB/SDT_MRI/FS
Extension format = nii.gz
 1 DC_vs_HC.mat
 2 HI_vs_DC.mat
 3 HI_vs_HC.mat
 4 NAT_vs_PAL.mat
 5 NAT_vs_PAT.mat
 6 PAL_vs_NAT.mat
 7 PAL_vs_PAT.mat
nruns = 1
autostimdur =


outanadir = /media/2TB/SDT_MRI/FS/AC1004/bold/sdt.sm8.mni
Found 52644/537168 ( 9.8) voxels in mask
Creating Design Matrix
 ... creation time =  0.007 sec
DoMCFit = 1
ntptot = 851, nX = 19, DOF = 832
Saving X matrix to /media/2TB/SDT_MRI/FS/AC1004/bold/sdt.sm8.mni/Xtmp.mat
XCond = 31.0456 (normalized)
Computing compensation for resdual AR1 bias
 1  -0.5  -0.500489    (t=0.097569)
 2  -0.25  -0.255326    (t=0.427178)
 3  0  -0.011955    (t=0.516085)
 4  0.25  0.229273    (t=0.839369)
 5  0.5  0.466983    (t=0.928175)
AR1 Correction M: 0.0147777 1.03322
Computing contrast matrices
OLS Beta Pass
  run 1    t= 0.0
    Global Mean  1120.98
Global In-Mask Mean = 1120.98 (983.432)
Rescale Target = 100
RescaleFactor = 0.0892077
OLS Residual Pass
  run 1    t= 0.0
??? Out of memory. Type HELP MEMORY for your options.

Error in ==> fast_selxavg3 at 489
    rsserun = sum(rrun.^2);

>> ------------------------------------------

I observed memory consuption with top(8) and noticed that around 11 GBs are eaten after about 30 second of running OLS residual pass. Do you think adding more memory to the PC would solve the problem, or is it some MATLAB/FS-related bug?

Best regards,
 Marcel

 




_______________________________________________
Freesurfer mailing list
Freesurfer@nmr.mgh.harvard.edu
https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer


_______________________________________________
Freesurfer mailing list
Freesurfer@nmr.mgh.harvard.edu
https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer


The information in this e-mail is intended only for the person to whom it is
addressed. If you believe this e-mail was sent to you in error and the e-mail
contains patient information, please contact the Partners Compliance HelpLine at
http://www.partners.org/complianceline . If the e-mail was sent to you in error
but does not contain patient information, please contact the sender and properly
dispose of the e-mail.




_______________________________________________
Freesurfer mailing list
Freesurfer@nmr.mgh.harvard.edu
https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer