3dMVM R error *** caught segfault *** cause 'memory not mapped'

[b]I posted a few days ago about a new problem Im encountering using 3dMVM. Rick Reynolds has been so kind to help troubleshoot (thank you, Rick), but unfortunately I am still having the same problem. I wanted to post a new topic with more information in hopes of increasing visibility to others that may have experience with my situation.

I have updated afni and r packages; when I run afni_system_check.py, there are no problems found. I also deleted everything in /Library/Frameworks/R.framework/ and re-installed R. I am on a 2018 iMac, quad core i7, 32 gb DDR4. I am re-running a 2x2x2 RM ANOVA using 3dMVM with 35 participant data sets (I successfully ran this 1 year ago). The only difference in re-running this ANOVA is the -resid option. This is the top of my 3dmvm txt file:[/b]


3dMVM -mask clippedfullmaskCV20.nii -prefix Accuracy_CV20 -jobs 4
-model 1
-resid /Users/jessicadefenderfer/Desktop/CV15_WAV72/ACC_CV20_RESID.nii
-wsVars “oxyaccnoiseType”
-num_glt 3
-gltLabel 1 OxyEff -gltCode 1 ‘oxy : 1HbO -1HbR’
-gltLabel 2 AccEff -gltCode 2 ‘acc : 1right -1wrong’
-gltLabel 3 NoiseTypeEff -gltCode 3 ‘noiseType : 1vocod -1noise’
Subj oxy acc noiseType InputFile
S1001 HbO wrong vocod /Users/jessicadefenderfer/Desktop/CV15_WAV72/S1001/viewer/Subject/1001_C7_unmaskO_CV20.nii
S1001 HbO wrong noise /Users/jessicadefenderfer/Desktop/CV15_WAV72/S1001/viewer/Subject/1001_C6_unmaskO_CV20.nii
S1001 HbO right vocod /Users/jessicadefenderfer/Desktop/CV15_WAV72/S1001/viewer/Subject/1001_C5_unmaskO_CV20.nii
S1001 HbO right noise /Users/jessicadefenderfer/Desktop/CV15_WAV72/S1001/viewer/Subject/1001_C4_unmaskO_CV20.nii
S1001 HbR wrong vocod /Users/jessicadefenderfer/Desktop/CV15_WAV72/S1001/viewer/Subject/1001_C7_unmaskR_CV20.nii
S1001 HbR wrong noise /Users/jessicadefenderfer/Desktop/CV15_WAV72/S1001/viewer/Subject/1001_C6_unmaskR_CV20.nii
S1001 HbR right vocod /Users/jessicadefenderfer/Desktop/CV15_WAV72/S1001/viewer/Subject/1001_C5_unmaskR_CV20.nii
S1001 HbR right noise /Users/jessicadefenderfer/Desktop/CV15_WAV72/S1001/viewer/Subject/1001_C4_unmaskR_CV20.nii \


3dMVM is able to read all my input files, and processes all 256 slices… once it gets to the 256th slice, it throws the error below. I can only guess its a memory problem, so I started with 6 participants in the ANOVA and through painstaking trial and error, have found that I can include up to 14 subject datasets before I get some version of this error:

*** caught segfault ***
address 0xfffffffd2524d030, cause ‘memory not mapped’
1: write.c.AFNI(filename, dset = brk, label = label, space = space, note = note, origin = origin, delta = delta, orient = orient, idcode = idcode, defhead = defhead, verb = verb, maskinf = maskinf, scale = scale, addFDR = addFDR, statsym = statsym, view = view, com_hist = com_hist, type = type, TR = TR, overwrite = overwrite)
2: write.AFNI(lop$outFN, out, brickNames, defhead = head, idcode = newid.AFNI(), com_hist = lop$com_history, statsym = statsym, addFDR = 1, type = “MRI_short”, overwrite = lop$overwrite)
An irrecoverable exception occurred. R is aborting now …
Segmentation fault

Without that -resid option, the ANOVA finishes without error. However, my memory pressure monitor shows no sign of running out memory and CPU load hardly reaches 15% usage running it with or without -resid.

During one of the successful runs with fewer participants, I noticed something odd in the output (see attachment 1, ‘congrats’). It warns me that the dataset name “Accuracy_cv20” and the resid filename conflicts with an existing file, so they werent written to disk. But there were no files of that name in this directory. Further, when Im monitoring the CPU/memory usage in the Mac’s activity monitor, R appears up to 7 or 8 times in the process column. Is it possible I have some weird program settings in R that has it trying to write (or re-write over) the same ANOVA output before its even finished? I can’t make any sense of this.

Thank you for any help. -Jess


The “caught segfault” error is most likely a memory issue. When you request for the model residuals, it would generate a large file with 2 x 2 x 2 x 35 = 280 volumes. For the other problem about file conflicts, unfortunately I don’t have any clue as to why you got such a strange error.

Hi Gang- Thanks for responding. I have a few ideas to try. When I find the solution, Ill post it here. -Jess