Before revision:  To exploit the multithreading capabilities of hardware without affecting performance, CROFT is designed to use hybrid programming model of OpenMP and MPI. CROFT implementation has a feature of overlapping compute and memory I /O with MPI communication . Depending on the number of processes used, CROFT shows performance improvement of about 51  to 42 percent as compared to FFTW3 library.
After revision:  To exploit the multithreading capabilities of hardware without affecting performance, CROFT is designed to use hybrid programming model of OpenMP and MPI. CROFT implementation has a feature of overlapping compute and memory I /O with MPI communication using multithreading. As opposed to other 3D FFT implementations, CROFT uses only two threads where one thread is dedicated for communication so that it can be effectively overlapped with computations. Thus, depending on the number of processes used, CROFT shows performance improvement of about 51 to 42 percent as compared to FFTW3 library.