The FFT of three dimensional (3D) input data is an important computational kernel of numerical simulations and is widely used in High Performance Computing (HPC) codes running on  large number of processors. Although the efficient parallelization of 3D FFT has been largely investigated over the last few decades, performance and scalability of parallel 3D FFT methods on new generation hardware architecture for HPC is a major challenge. Looking at upcoming exascale cluster architectures, the conventional parallel 3D FFT calculations on HPC needs improvement for better performance . In this paper, we present CDACs three dimensional Fast Fourier Transform (CROFT) library which implements three dimensional parallel FFT using pencil decomposition. 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.
The FFT of three-dimensional (3D) input data is an important computational kernel of numerical simulations and is widely used in High Performance Computing (HPC) codes running on a large number of processors. Performance of many scientific applications such as Molecular Dynamic simulations depends on the underlying 3D parallel FFT library being used . In this paper, we present C-DACs three-dimensional Fast Fourier Transform (CROFT) library which implements three-dimensional parallel FFT using pencil decomposition. To exploit the hyperthreading capabilities of processor cores without affecting performance, CROFT is designed to use multithreading along with MPI. CROFT implementation has an innovative 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 achieves performance improvement of about 51 \% to 42 \% as compared to FFTW3 library.
R
three dimensional
three-dimensional
A
a
R
Although the efficient parallelization of
Performance of many scientific applications such as Molecular Dynamic simulations depends on the underlying
R
FFT has been largely investigated over the last few decades, performance and scalability of parallel 3D FFT methods on new generation hardware architecture for HPC is a major challenge. Looking at upcoming exascale cluster architectures, the conventional parallel 3D FFT calculations on HPC needs improvement for better performance
parallel FFT library being used
R
CDACs three dimensional
C-DACs three-dimensional
R
three dimensional
three-dimensional
R
multithreading capabilities of hardware
hyperthreading capabilities of processor cores
R
hybrid programming model of OpenMP and
multithreading along with
R
a
an innovative
R
memory I
memory-I
R
. Depending
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
R
shows
achieves
A
\%
R
percent
\%