[gmx-developers] FFTW 3.1.2 and wisdom

Erik Lindahl lindahl at cbr.su.se
Tue Jul 31 22:30:59 CEST 2007

Hi Allen,

By all means test it - the FFTW calls are isolated to the single file  
src/mdlib/gmx_fft_fftw3.c :-)

However, I wouldn't expect any major impact:

First, the actual 3D FFTs account for less than 10% of the runtime  
with PME, so even a 30% improvement would barely be noticable for  
your Gromacs performance.

Second, on x86 platforms the best choice is obviously the SSE/SSE2  
FFT-lets. We've made sure the FFT grid allocated in Gromacs is  
properly aligned to enable these (although we also support FFTs for  
unaligned arrays in the interface), so I'm not sure what would change  
if more time is spent benchmarking. You could try replacing the alloc 
() call with the FFTW one; the main reason we provide our own is just  
that we need to support alternative FFT libraries like MKL and  

I've been wrong on (multiple) occasions before though, so please  
share the results if you test it . Even if it just confirms my  
guesses it would be useful to know for sure!



On Jul 31, 2007, at 7:42 PM, Allen Smith wrote:

> Has anyone worked on using a system "wisdom" file for FFTW 3.1.2  
> usage by
> GROMACS and/or having GROMACS do more extensive planning for FFTW3 -
> e.g., FFTW_PATIENT instead of FFTW_MEASURE - but save the resulting
> "wisdom"? In the former case, one could make some pre-done
> system "wisdom" created using fftwf-wisdom running with the  
> routines that
> GROMACS uses, with the -x (FFTW_EXHAUSTIVE) flag used. The latter  
> might be
> the best if the code alignment is considerably different between
> fftwf-wisdom and GROMACS (more so than any differences due to  
> planning on the same-allocated arrays (or FFTW malloced arrays) than
> the execution is taking place on; I am wondering as to why plans  
> are not
> done for unaligned arrays with the FFTW_UNALIGNED planner
> flag... alternatively, could fftw_malloc be used in place of
> gmx_alloc_aligned?), according to the FFTW documentation ("Caveats  
> in Using
> Wisdom").
> 	Thanks,
> 	-Allen
> P.S. The systems that we'd be using this on would be a mix of  
> Redhat Linux
> boxes (2.4.21-27.ELhugemem or 2.4.21-27.ELsmp, dual P4 Xeon  
> (Foster)) and
> SGIs (IRIX 6.5.28m-6.5.30m, generally dual-processor R12000/IP30).
> -- 
> Allen Smith                       http://cesario.rutgers.edu/easmith/
> February 1, 2003                               Space Shuttle Columbia
> Ad Astra Per Aspera                     To The Stars Through Asperity
> _______________________________________________
> gmx-developers mailing list
> gmx-developers at gromacs.org
> http://www.gromacs.org/mailman/listinfo/gmx-developers
> Please don't post (un)subscribe requests to the list. Use the
> www interface or send it to gmx-developers-request at gromacs.org.

More information about the gromacs.org_gmx-developers mailing list