Skip to content
Snippets Groups Projects
Commit 76ca4e00 authored by Emanuele De Rubeis's avatar Emanuele De Rubeis
Browse files

Makefile reordering

parent fafe050a
No related branches found
No related tags found
No related merge requests found
...@@ -27,9 +27,16 @@ CFLAGS += -I./ ...@@ -27,9 +27,16 @@ CFLAGS += -I./
FFTWLIBS = FFTWLIBS =
# ======================================================== # ========================================================
# CODE OPTIONS # CODE OPTIONS FOR THE COMPILATION
# # (refer to the RICK wiki here
# https://www.ict.inaf.it/gitlab/claudio.gheller/hpc_imaging/-/wikis/home)
# ========================================================
# PARALLEL FFT IMPLEMENTATION
# use FFTW (it can be switched on ONLY if MPI is active) # use FFTW (it can be switched on ONLY if MPI is active)
OPT += -DUSE_FFTW OPT += -DUSE_FFTW
...@@ -40,37 +47,36 @@ OPT += -DUSE_FFTW ...@@ -40,37 +47,36 @@ OPT += -DUSE_FFTW
# switch on the OpenMP parallelization # switch on the OpenMP parallelization
#OPT += -DUSE_OMP #OPT += -DUSE_OMP
# write the full 3D cube of gridded visibilities and its FFT transform # ========================================================
#OPT += -DWRITE_DATA
# ACTIVATE PIECES OF THE CODE TO BE PERFORMED
# write the final image
OPT += -DWRITE_IMAGE
# perform w-stacking phase correction # perform w-stacking phase correction
OPT += -DPHASE_ON OPT += -DPHASE_ON
# Support CFITSIO !!! Remember to add the path to the CFITSIO library to LD_LIBRARY_PATH
#OPT += -DFITSIO
# Normalize uvw in case it is not done in the binMS # Normalize uvw in case it is not done in the binMS
#OPT += -DNORMALIZE_UVW #OPT += -DNORMALIZE_UVW
# Gridding kernel: GAUSS, GAUSS_HI_PRECISION, KAISERBESSEL # ========================================================
# SELECT THE GRIDDING KERNEL: GAUSS, GAUSS_HI_PRECISION, KAISERBESSEL
OPT += -DGAUSS_HI_PRECISION OPT += -DGAUSS_HI_PRECISION
#OPT += -DGAUSS #OPT += -DGAUSS
#OPT += -DKAISERBESSEL #OPT += -DKAISERBESSEL
#OPT += -DVERBOSE
# ======================================================== # ========================================================
# ACCELERATION
# # GPU OFFLOADING OPTIONS
#OPT += -DNVIDIA #OPT += -DNVIDIA
#use cuda for GPUs # use CUDA for GPUs
#OPT += -DCUDACC #OPT += -DCUDACC
# use GPU acceleration via OMP # use GPU acceleration via OMP
...@@ -82,26 +88,47 @@ OPT += -DGAUSS_HI_PRECISION ...@@ -82,26 +88,47 @@ OPT += -DGAUSS_HI_PRECISION
# use NVIDIA GPU to perform the reduce # use NVIDIA GPU to perform the reduce
#OPT += -DNCCL_REDUCE #OPT += -DNCCL_REDUCE
# use AMD GPU to perform the reduce
#OPT += -DRCCL_REDUCE
# use GPU to perform FFT # use GPU to perform FFT
#OPT += -DCUFFTMP #OPT += -DCUFFTMP
# FULL GPU SUPPORT - Recommended for full NVIDIA GPU code execution
OPT += -DFULL_NVIDIA
ifeq (FULL_NVIDIA,$(findstring FULL_NVIDIA,$(OPT)))
OPT += -DCUDACC -DNCCL_REDUCE -DCUFFTMP
endif
# support for AMD GPUs # support for AMD GPUs
#OPT += __HIP_PLATFORM_AMD__ #OPT += __HIP_PLATFORM_AMD__
# use AMD GPU to perform the reduce
#OPT += -DRCCL_REDUCE
# =======================================================
# OUTPUT HANDLING
# Support CFITSIO !!! Remember to add the path to the CFITSIO library to LD_LIBRARY_PATH
#OPT += -DFITSIO
# write the full 3D cube of gridded visibilities and its FFT transform
#OPT += -DWRITE_DATA
# write the final image
OPT += -DWRITE_IMAGE
# =======================================================
# DEVELOPING OPTIONS
#OPT += -DVERBOSE
#perform the debugging in the ring implementation #perform the debugging in the ring implementation
#OPT += -DDEBUG #OPT += -DDEBUG
# ======================================================== # =======================================================
# END OF OPTIONS
# ========================================================
#FULL GPU SUPPORT!!!
OPT += -DFULL_NVIDIA
ifeq (FULL_NVIDIA,$(findstring FULL_NVIDIA,$(OPT)))
OPT += -DCUDACC -DNCCL_REDUCE -DCUFFTMP
endif
# ======================================================= # =======================================================
ifeq (USE_OMP,$(findstring USE_OMP,$(OPT))) ifeq (USE_OMP,$(findstring USE_OMP,$(OPT)))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment