malcolm,
i attempted to add openmp support a few years ago but couldnt get it working across the build. in principle it would be great to get it working with freesurfer, but in practice threading issues and validity of results will consume an order of magnitude more time than that to get openmp to compile.
we have implemented GPU stuff in a few of the binaries. add --with-cuda=/usr/local/cuda to enable it, although i dont think it builds against the local cuda version (4.1) yet.
n.
On Tue, 2012-01-10 at 08:16 -0600, Malcolm Tobias wrote:
After being able to build with GCC, I tried to add OpenMP support:
[root@login002 freesurfer-dev-20120106]# ./configure --enable-openmp -disable- all-apps --with-mni-dir=/export/minc-1.4/ --with-vxl-dir=/export/vxl-1.13.0 --prefix=/scratch/mtobias/freesurfer-dev-gcc-openmp ... (Note: Mac OS X doesn't use crypt) checking for nccreate in -lnetcdf... no configure: error: FATAL: netcdf lib not found. Set LDFLAGS or --with-mni-dir.
I don't believe there's a problem with the library:
[root@login002 freesurfer-dev-20120106]# ls /export/minc-1.4/lib libEBTKS.a libminc.a libnetcdf.a libvolume_io.la perl5 libEBTKS.la libminc.la libvolume_io.a mni_autoreg
[root@login002 freesurfer-dev-20120106]# nm /export/minc-1.4/lib/libnetcdf.a | grep nccreate 000000000000028d T nccreate
and if I eliminate the "--enable-openmp" flag it configures fine.
Depending on how well FreeSurfer is parallelized, OpenMP could be a great benefit for us here, but if it doesn't work too well, or isn't really supported, I can move on to try other things.
Cheers, Malcolm