Skip to content
Snippets Groups Projects
Commit f8d9f1e3 authored by Pietro Incardona's avatar Pietro Incardona
Browse files

Fixing conflicts

parents e79fecdd c3b6636f
No related branches found
No related tags found
No related merge requests found
Showing
with 253 additions and 70 deletions
...@@ -116,3 +116,5 @@ perf.data.old ...@@ -116,3 +116,5 @@ perf.data.old
projectId.sh projectId.sh
/build /build
/Default/ /Default/
node_modules
node_modules
...@@ -74,8 +74,6 @@ ubuntu_run: ...@@ -74,8 +74,6 @@ ubuntu_run:
- ./run.sh $CI_PROJECT_DIR unused 1 pdata 0 $CI_COMMIT_REF_NAME - ./run.sh $CI_PROJECT_DIR unused 1 pdata 0 $CI_COMMIT_REF_NAME
- ./run.sh $CI_PROJECT_DIR unused 2 pdata 0 $CI_COMMIT_REF_NAME - ./run.sh $CI_PROJECT_DIR unused 2 pdata 0 $CI_COMMIT_REF_NAME
- ./run.sh $CI_PROJECT_DIR unused 3 pdata 0 $CI_COMMIT_REF_NAME - ./run.sh $CI_PROJECT_DIR unused 3 pdata 0 $CI_COMMIT_REF_NAME
- ./run.sh $CI_PROJECT_DIR unused 4 pdata 0 $CI_COMMIT_REF_NAME
- ./run.sh $CI_PROJECT_DIR unused 5 pdata 0 $CI_COMMIT_REF_NAME
- cd openfpm_numerics - cd openfpm_numerics
- ./run.sh $CI_PROJECT_DIR unused 1 0 0 numerics - ./run.sh $CI_PROJECT_DIR unused 1 0 0 numerics
- ./run.sh $CI_PROJECT_DIR unused 2 0 0 numerics - ./run.sh $CI_PROJECT_DIR unused 2 0 0 numerics
......
...@@ -13,3 +13,6 @@ ...@@ -13,3 +13,6 @@
[submodule "openfpm_numerics"] [submodule "openfpm_numerics"]
path = openfpm_numerics path = openfpm_numerics
url = ssh://git@git.mpi-cbg.de/openfpm/openfpm_numerics.git url = ssh://git@git.mpi-cbg.de/openfpm/openfpm_numerics.git
[submodule "gdbgui"]
path = gdbgui
url = https://github.com/incardon/gdbgui.git
# Change Log # Change Log
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
## [3.1.0] 2020 (Codename New Horizons) ## [3.2.0] January 2021 (Codename Hopper)
- Adding CUDA_ON_CPU option to run CUDA code on CPU
- Adding gdb-gui debugger
### Fixed
- Minors bugs
### Changes
- In order to compile OpenFPM is now required a compiler implementing C++14 Standard
## [3.1.0] October 2020 (Codename New Horizons)
- Adding GPU support for ghost_put - Adding GPU support for ghost_put
- Adding support for CUDA 11 - Adding support for CUDA 11
...@@ -14,7 +27,7 @@ All notable changes to this project will be documented in this file. ...@@ -14,7 +27,7 @@ All notable changes to this project will be documented in this file.
- None - None
## [3.0.0] 2020 (Codename Sparsity) ## [3.0.0] July 2020 (Codename Sparsity)
- Upgrading all the dependencies: BOOST,PETSC,SUITESPARSE,OPENBLAS - Upgrading all the dependencies: BOOST,PETSC,SUITESPARSE,OPENBLAS
- Adding CPU and GPU sparse grids. Look at the examples SparseGrid in the forlder examples - Adding CPU and GPU sparse grids. Look at the examples SparseGrid in the forlder examples
......
...@@ -35,7 +35,19 @@ set(METIS_DIR ${METIS_ROOT}) ...@@ -35,7 +35,19 @@ set(METIS_DIR ${METIS_ROOT})
set(PARMETIS_DIR ${PARMETIS_ROOT}) set(PARMETIS_DIR ${PARMETIS_ROOT})
set(OPENBLAS_ROOT CACHE PATH "Root path for blas library") set(OPENBLAS_ROOT CACHE PATH "Root path for blas library")
set(SuiteSparse_ROOT ${SUITESPARSE_ROOT}) set(SuiteSparse_ROOT ${SUITESPARSE_ROOT})
set(CUDA_ON_CPU CACHE BOOL "Make Cuda work on heap")
set(CPACK_RUN_INSTALL_DEPENDENCIES CACHE BOOL "Set to true if we are creating deb or RPM packages")
set(ENABLE_GARBAGE_INJECTOR CACHE BOOL "Enable the injector of garbage in the memory allocator")
set(ENABLE_VCLUSTER_GARBAGE_INJECTOR CACHE BOOL "Enable the injector of garbage in the vcluster memory buffers")
# Enabling real GPU is stronger than using CUDA_ON_CPU
if (ENABLE_GPU)
set(CUDA_ON_CPU OFF)
# Test CLang
find_package(CUDA)
set(CMAKE_CUDA_COMPILER_LIBRARY_ROOT ${CUDA_TOOLKIT_ROOT_DIR})
enable_language(CUDA)
endif()
set (CMAKE_CXX_STANDARD 14) set (CMAKE_CXX_STANDARD 14)
set (CMAKE_CUDA_STANDARD 14) set (CMAKE_CUDA_STANDARD 14)
...@@ -51,55 +63,29 @@ endif() ...@@ -51,55 +63,29 @@ endif()
set(ENV{PATH} "$ENV{PATH}:${HDF5_ROOT}/bin") set(ENV{PATH} "$ENV{PATH}:${HDF5_ROOT}/bin")
set(HDF5_PREFER_PARALLEL TRUE) set(HDF5_PREFER_PARALLEL TRUE)
if(ENABLE_GPU)
enable_language(CUDA)
find_package(CUDA)
if (CUDA_VERSION_MAJOR EQUAL 9 AND CUDA_VERSION_MINOR EQUAL 2)
message("CUDA is compatible 9.2")
set(WARNING_SUPPRESSION_AND_OPTION_NVCC -Xcudafe "--display_error_number --diag_suppress=611 --diag_suppress=2885 --diag_suppress=2886 --diag_suppress=2887 --diag_suppress=2888 --diag_suppress=186 --diag_suppress=111" --expt-extended-lambda)
FILE(WRITE cuda_options " -Xcudafe \"--display_error_number --diag_suppress=611 --diag_suppress=2885 --diag_suppress=2886 --diag_suppress=2887 --diag_suppress=2888 --diag_suppress=186 --diag_suppress=111\" --expt-extended-lambda ")
elseif ( CUDA_VERSION_MAJOR EQUAL 10 AND CUDA_VERSION_MINOR EQUAL 1 )
message("CUDA is compatible 10.1")
set(WARNING_SUPPRESSION_AND_OPTION_NVCC -Xcudafe "--display_error_number --diag_suppress=2915 --diag_suppress=2912 --diag_suppress=2913 --diag_suppress=111 --diag_suppress=186 --diag_suppress=611 " --expt-extended-lambda )
FILE(WRITE cuda_options "-Xcudafe \"--display_error_number --diag_suppress=2915 --diag_suppress=2914 --diag_suppress=2912 --diag_suppress=2913 --diag_suppress=111 --diag_suppress=186 --diag_suppress=611 \" --expt-extended-lambda")
elseif ( CUDA_VERSION_MAJOR EQUAL 10 AND CUDA_VERSION_MINOR EQUAL 2 )
message("CUDA is compatible 10.2")
set(WARNING_SUPPRESSION_AND_OPTION_NVCC -Xcudafe "--display_error_number --diag_suppress=2976 --diag_suppress=2977 --diag_suppress=2978 --diag_suppress=2979 --diag_suppress=1835 --diag_suppress=611 --diag_suppress=186 --diag_suppress=128" --expt-extended-lambda)
set(WARNING_SUPPRESSION_AND_OPTION_NVCC_TEXT "-Xcudafe \"--display_error_number --diag_suppress=2976 --diag_suppress=2977 --diag_suppress=2978 --diag_suppress=2979 --diag_suppress=1835 --diag_suppress=611 --diag_suppress=186 --diag_suppress=128\" --expt-extended-lambda")
FILE(WRITE cuda_options "-Xcudafe \"--display_error_number --diag_suppress=2976 --diag_suppress=2977 --diag_suppress=2978 --diag_suppress=2979 --diag_suppress=1835 --diag_suppress=611 --diag_suppress=186 --diag_suppress=128\" --expt-extended-lambda")
elseif ( CUDA_VERSION_MAJOR EQUAL 11 AND CUDA_VERSION_MINOR EQUAL 0 )
message("CUDA is compatible 11.0")
set(WARNING_SUPPRESSION_AND_OPTION_NVCC -Xcudafe "--display_error_number --diag_suppress=3056 --diag_suppress=3057 --diag_suppress=3058 --diag_suppress=3059 --diag_suppress=611 --diag_suppress=186 --diag_suppress=128" --expt-extended-lambda)
set(WARNING_SUPPRESSION_AND_OPTION_NVCC_TEXT "-Xcudafe \"--display_error_number --diag_suppress=3056 --diag_suppress=3057 --diag_suppress=3058 --diag_suppress=3059 --diag_suppress=611 --diag_suppress=186 --diag_suppress=128\" --expt-extended-lambda")
FILE(WRITE cuda_options "-Xcudafe \"--display_error_number --diag_suppress=3056 --diag_suppress=3058 --diag_suppress=3058 --diag_suppress=3059 --diag_suppress=611 --diag_suppress=186 --diag_suppress=128\" --expt-extended-lambda")
elseif ( CUDA_VERSION_MAJOR EQUAL 11 AND CUDA_VERSION_MINOR EQUAL 1 )
message("CUDA is compatible 11.1")
set(WARNING_SUPPRESSION_AND_OPTION_NVCC -Xcudafe "--display_error_number --diag_suppress=3124 --diag_suppress=3126 --diag_suppress=3125 --diag_suppress=3123 --diag_suppress=611 --diag_suppress=186 --diag_suppress=128" --expt-extended-lambda)
set(WARNING_SUPPRESSION_AND_OPTION_NVCC_TEXT "-Xcudafe \"--display_error_number --diag_suppress=3124 --diag_suppress=3126 --diag_suppress=3125 --diag_suppress=3123 --diag_suppress=611 --diag_suppress=186 --diag_suppress=128\" --expt-extended-lambda")
FILE(WRITE cuda_options "-Xcudafe \"--display_error_number --diag_suppress=3124 --diag_suppress=3125 --diag_suppress=3126 --diag_suppress=3123 --diag_suppress=611 --diag_suppress=186 --diag_suppress=128\" --expt-extended-lambda")
else()
message(FATAL_ERROR "CUDA is incompatible, version 9.2 10.1 10.2 and 11.0 is only supported")
endif()
endif()
set(Vc_DIR "${Vc_ROOT}/lib/cmake/Vc/") set(Vc_DIR "${Vc_ROOT}/lib/cmake/Vc/")
message("Searching Vc in ${Vc_DIR}") message("Searching Vc in ${Vc_DIR}")
find_package(Boost 1.68.0 COMPONENTS unit_test_framework iostreams program_options system filesystem) find_package(Boost 1.72.0 COMPONENTS unit_test_framework iostreams program_options system filesystem OPTIONAL_COMPONENTS fiber context)
find_package(MPI) find_package(MPI)
find_package(PETSc) find_package(PETSc)
find_package(HDF5) find_package(HDF5)
find_package(Eigen3) find_package(Eigen3)
find_package(LibHilbert) find_package(LibHilbert)
find_package(Metis) find_package(METIS)
find_package(ParMetis) find_package(ParMETIS)
find_package(TinyObjLoader ) find_package(TinyObjLoader )
find_package(BLAS) find_package(BLAS)
find_package(LAPACK) find_package(LAPACK)
find_package(Eigen3) find_package(Eigen3)
find_package(SuiteSparse OPTIONAL_COMPONENTS UMFPACK) find_package(SuiteSparse OPTIONAL_COMPONENTS UMFPACK)
find_package(Vc) find_package(Vc)
find_package(OpenMP)
if (OPENMP_FOUND)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}")
endif()
if(PROFILE_WITH_SCOREP) if(PROFILE_WITH_SCOREP)
set(CMAKE_CXX_COMPILER_LAUNCHER "scorep") set(CMAKE_CXX_COMPILER_LAUNCHER "scorep")
...@@ -107,7 +93,7 @@ if(PROFILE_WITH_SCOREP) ...@@ -107,7 +93,7 @@ if(PROFILE_WITH_SCOREP)
set(CMAKE_CUDA_COMPILER_LAUNCHER "scorep") set(CMAKE_CUDA_COMPILER_LAUNCHER "scorep")
endif() endif()
if(CUDA_FOUND) if(ENABLE_GPU AND CUDA_FOUND)
set(OPENFPM_INIT_FILE "initialize/initialize_wrapper_cuda.cu") set(OPENFPM_INIT_FILE "initialize/initialize_wrapper_cuda.cu")
else() else()
set(OPENFPM_INIT_FILE "initialize/initialize_wrapper_cpu.cpp") set(OPENFPM_INIT_FILE "initialize/initialize_wrapper_cpu.cpp")
...@@ -143,10 +129,6 @@ if(TEST_PERFORMANCE) ...@@ -143,10 +129,6 @@ if(TEST_PERFORMANCE)
set(DEFINE_PERFORMANCE_TEST "#define PERFORMANCE_TEST") set(DEFINE_PERFORMANCE_TEST "#define PERFORMANCE_TEST")
endif() endif()
if(CUDA_FOUND)
set(DEFINE_CUDA_GPU "#define CUDA_GPU")
endif()
if (METIS_FOUND) if (METIS_FOUND)
set(DEFINE_HAVE_METIS "#define HAVE_METIS 1") set(DEFINE_HAVE_METIS "#define HAVE_METIS 1")
else() else()
...@@ -161,6 +143,7 @@ else() ...@@ -161,6 +143,7 @@ else()
message( FATAL_ERROR "ParMetis is required in order to install OpenFPM") message( FATAL_ERROR "ParMetis is required in order to install OpenFPM")
endif() endif()
if(MPI_FOUND) if(MPI_FOUND)
set(DEFINE_HAVE_MPI "#define HAVE_MPI") set(DEFINE_HAVE_MPI "#define HAVE_MPI")
else() else()
...@@ -169,15 +152,35 @@ else() ...@@ -169,15 +152,35 @@ else()
endif() endif()
if (Boost_FOUND) if (Boost_FOUND)
set(DEFINE_HAVE_BOOST "#define HAVE_BOOST") set(DEFINE_HAVE_BOOST "#define HAVE_BOOST")
set(DEFINE_HAVE_BOOST_IOSTREAMS "#define HAVE_BOOST_IOSTREAMS") set(DEFINE_HAVE_BOOST_IOSTREAMS "#define HAVE_BOOST_IOSTREAMS")
set(DEFINE_HAVE_BOOST_PROGRAM_OPTIONS "#define HAVE_BOOST_PROGRAM_OPTIONS") set(DEFINE_HAVE_BOOST_PROGRAM_OPTIONS "#define HAVE_BOOST_PROGRAM_OPTIONS")
set(DEFINE_HAVE_BOOST_UNIT_TEST_FRAMEWORK "#define HAVE_BOOST_UNIT_TEST_FRAMEWORK") set(DEFINE_HAVE_BOOST_UNIT_TEST_FRAMEWORK "#define HAVE_BOOST_UNIT_TEST_FRAMEWORK")
if (Boost_CONTEXT_FOUND)
set(DEFINE_HAVE_BOOST_CONTEXT "#define HAVE_BOOST_CONTEXT")
set(OPTIONAL_BOOST_LIBS "-lboost_context")
else()
#if context is not there CUDA_ON_CPU cannot be activated
set(CUDA_ON_CPU OFF)
endif()
if (Boost_FIBER_FOUND)
set(DEFINE_HAVE_BOOST_FIBER "#define HAVE_BOOST_FIBER")
string(CONCAT OPTIONAL_BOOST_LIBS ${OPTIONAL_BOOST_LIBS} " -lboost_fiber")
endif()
file(WRITE optional_boost_libs "${OPTIONAL_BOOST_LIBS}")
else() else()
file(WRITE error_code "202") file(WRITE error_code "202")
message( FATAL_ERROR "BOOST is required in order to install OpenFPM" ) message( FATAL_ERROR "BOOST is required in order to install OpenFPM" )
endif() endif()
if(ENABLE_GPU AND CUDA_FOUND)
set(DEFINE_CUDA_GPU "#define CUDA_GPU")
endif()
if(CUDA_ON_CPU)
set(DEFINE_CUDA_GPU "#define CUDA_GPU")
endif()
if(HDF5_FOUND) if(HDF5_FOUND)
if (HDF5_IS_PARALLEL) if (HDF5_IS_PARALLEL)
set(DEFINE_HAVE_HDF5 "#define HAVE_HDF5") set(DEFINE_HAVE_HDF5 "#define HAVE_HDF5")
...@@ -215,6 +218,14 @@ else() ...@@ -215,6 +218,14 @@ else()
message( FATAL_ERROR "Vc is required in roder to install OpenFPM") message( FATAL_ERROR "Vc is required in roder to install OpenFPM")
endif() endif()
if (ENABLE_GARBAGE_INJECTOR)
set(DEFINE_GARBAGE_INJECTOR "#define GARBAGE_INJECTOR")
endif()
if (ENABLE_VCLUSTER_GARBAGE_INJECTOR)
set(DEFINE_VCLUSTER_GARBAGE_INJECTOR "#define VCLUSTER_GARBAGE_INJECTOR")
endif()
if(APPLE) if(APPLE)
set(DEFINE_HAVE_OSX "#define HAVE_OSX") set(DEFINE_HAVE_OSX "#define HAVE_OSX")
endif() endif()
...@@ -225,16 +236,97 @@ endif() ...@@ -225,16 +236,97 @@ endif()
file(WRITE error_code "0") file(WRITE error_code "0")
file(WRITE cuda_lib "${CUDA_cudart_static_LIBRARY} ${CUDA_cudadevrt_LIBRARY}") file(WRITE cuda_lib "${CUDA_cudart_static_LIBRARY} ${CUDA_cudadevrt_LIBRARY}")
file(WRITE cuda_include "-I${CUDA_INCLUDE_DIRS}") if(CUDA_ON_CPU)
file(WRITE cuda_include "-I${CUDA_INCLUDE_DIRS} -D__NVCC__ -DCUDART_VERSION=11000 -DCUDA_ON_CPU")
file(WRITE cuda_on_cpu "YES")
else()
file(WRITE cuda_include "-I${CUDA_INCLUDE_DIRS}")
file(WRITE cuda_on_cpu "NO")
endif()
file(WRITE mpi_include "-I${MPI_C_INCLUDE_DIRS}") file(WRITE mpi_include "-I${MPI_C_INCLUDE_DIRS}")
file(WRITE mpi_libs "${MPI_C_LINK_FLAGS} ${MPI_C_LIBRARIES}") file(WRITE mpi_libs "${MPI_C_LINK_FLAGS} ${MPI_C_LIBRARIES}")
file(WRITE cuda_options "${WARNING_SUPPRESSION_AND_OPTION_NVCC_TEXT}")
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/config/config_cmake.h.in ${CMAKE_CURRENT_SOURCE_DIR}/src/config/config.h) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/config/config_cmake.h.in ${CMAKE_CURRENT_SOURCE_DIR}/src/config/config.h)
add_subdirectory (src)
add_subdirectory (openfpm_devices)
add_subdirectory (openfpm_data)
add_subdirectory (openfpm_io) add_subdirectory (openfpm_io)
add_subdirectory (openfpm_vcluster)
add_subdirectory (openfpm_numerics) add_subdirectory (openfpm_numerics)
file(WRITE cuda_options "${WARNING_SUPPRESSION_AND_OPTION_NVCC_TEXT}")
add_subdirectory (src)
#################### CPack to create auto installing packages
include(InstallRequiredSystemLibraries)
if (CPACK_RUN_INSTALL_DEPENDENCIES)
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "OpenFPM distributed data-structures")
set(CPACK_PACKAGE_VENDOR "IBirdSoft")
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/gpl-3.0.txt")
set(CPACK_PACKAGE_VERSION_MAJOR "3")
set(CPACK_PACKAGE_VERSION_MINOR "2")
set(CPACK_PACKAGE_VERSION_PATCH "0")
set(CPACK_PACKAGE_INSTALL_DIRECTORY "CMake ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}")
set(CPACK_STRIP_FILES "bin/MyExecutable")
set(CPACK_SOURCE_STRIP_FILES "")
#set(CPACK_PACKAGE_EXECUTABLES "MyExecutable" "My Executable")
set(CPACK_PACKAGE_INSTALL_DIRECTORY /usr/local/openfpm)
set(CPACK_PACKAGING_INSTALL_PREFIX /usr/local/openfpm)
set(CPACK_PACKAGE_HOMEPAGE_URL http://openfpm.mpi-cbg.de)
set(CPACK_RPM_PACKAGE_AUTOREQPROV NO)
install(FILES $ENV{DEP_PACKING}/openfpm_vars
DESTINATION openfpm_vars
)
install(DIRECTORY $ENV{DEP_PACKING}/BOOST
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/EIGEN
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/HDF5
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/LIBHILBERT
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/METIS
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/MPI
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/OPENBLAS
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/PARMETIS
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/PETSC
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/SUITESPARSE
DESTINATION dependencies/
)
install(DIRECTORY $ENV{DEP_PACKING}/VCDEVEL
DESTINATION dependencies/
)
endif()
include(CPack)
Makefile 0 → 100644
all:
$(MAKE) -C build $@
clean:
$(MAKE) -C build $@
install:
$(MAKE) -C build $@
script/install_parallel_debugger
pdata:
$(MAKE) -C build $@
numerics:
$(MAKE) -C build $@
.PHONY: all clean install
README 0 → 100644
# OpenFPM
OpenFPM is a scalable and open C++ framework for particles and mesh simulation
You can build scalable: Molecular dynamic,SPH, Granular flow,Finite differences, Particle Mesh codes on CPUs and GPUs. We provide examples for each case here. Despite our main interest in simulations the distributed data-structures OpenFPM provides are not limited to simulations. The work is released under GPL 3.0
If you use OpenFPM please cite this paper
https://www.sciencedirect.com/science/article/pii/S0010465519300852?via%3Dihub
## Installation
To install run ./install and follow instructions
At the end of the installation rememerb to to make install
# Example and documentation
Example and documentation can be founded at openfpm.mpi-cbg.de
...@@ -30,6 +30,7 @@ if [ x"$hostname" == x"cifarm-ubuntu-node" ]; then ...@@ -30,6 +30,7 @@ if [ x"$hostname" == x"cifarm-ubuntu-node" ]; then
# rm -rf $HOME/openfpm_dependencies/openfpm_pdata/$branch/ # rm -rf $HOME/openfpm_dependencies/openfpm_pdata/$branch/
echo "Ubuntu node" echo "Ubuntu node"
./install_MPI_mpich.sh $HOME/openfpm_dependencies/openfpm_pdata/$branch/ 4 ./install_MPI_mpich.sh $HOME/openfpm_dependencies/openfpm_pdata/$branch/ 4
export PATH="/opt/bin:$PATH"
fi fi
if [ x"$hostname" == x"cifarm-mac-node.mpi-cbg.de" ]; then if [ x"$hostname" == x"cifarm-mac-node.mpi-cbg.de" ]; then
...@@ -44,6 +45,9 @@ if [ x"$hostname" == x"falcon1" ]; then ...@@ -44,6 +45,9 @@ if [ x"$hostname" == x"falcon1" ]; then
if [ x"$comp_type" == x"intel" ]; then if [ x"$comp_type" == x"intel" ]; then
module load parallel_studio_xe/2019u1 module load parallel_studio_xe/2019u1
dependency_dir=/projects/ppm/rundeck/openfpm_dependencies_intel/ dependency_dir=/projects/ppm/rundeck/openfpm_dependencies_intel/
elif [ x"$with_gpu" == x"" ]; then
mkdir /projects/ppm/rundeck/openfpm_dependencies_${branch}_no_cuda/
dependency_dir=/projects/ppm/rundeck/openfpm_dependencies_${branch}_no_cuda/
else else
mkdir /projects/ppm/rundeck/openfpm_dependencies_$branch/ mkdir /projects/ppm/rundeck/openfpm_dependencies_$branch/
dependency_dir=/projects/ppm/rundeck/openfpm_dependencies_$branch/ dependency_dir=/projects/ppm/rundeck/openfpm_dependencies_$branch/
...@@ -79,18 +83,20 @@ installation_dir="--prefix=$HOME/openfpm_install/$branch" ...@@ -79,18 +83,20 @@ installation_dir="--prefix=$HOME/openfpm_install/$branch"
#echo "StrictHostKeyChecking=no" > $HOME/.ssh/config #echo "StrictHostKeyChecking=no" > $HOME/.ssh/config
#chmod 600 $HOME/.ssh/config #chmod 600 $HOME/.ssh/config
foward_options= foward_options="--enable-cuda-on-cpu"
install_options= install_options=
if [ x"$comp_type" == x"full" ]; then if [ x"$comp_type" == x"full" ]; then
install_options="-s" install_options="-s "
elif [ x"$comp_type" == x"intel" ]; then elif [ x"$comp_type" == x"intel" ]; then
install_options=" " install_options="-s "
else else
install_options="-s -m" install_options="-s -m "
fi fi
if [ x"$comp_type" == x"se_class" ]; then if [ x"$comp_type" == x"se_class" ]; then
foward_options="--enable-se-class1 --with-action-on-error=THROW_ON_ERROR" foward_options="$foward_options --enable-se-class1 --with-action-on-error=THROW_ON_ERROR"
elif [ x"$comp_type" == x"garbageinjv" ]; then
foward_options="$foward_options --enable-garbageinjv"
elif [ x"$comp_type" == x"asan" ]; then elif [ x"$comp_type" == x"asan" ]; then
foward_options="$foward_options --enable-asan" foward_options="$foward_options --enable-asan"
fi fi
...@@ -107,7 +113,11 @@ if [ x"$comp_type" == x"full" ]; then ...@@ -107,7 +113,11 @@ if [ x"$comp_type" == x"full" ]; then
make install make install
else else
echo "Make install partial" echo "Make install partial"
mv $HOME/openfpm_vars $HOME/openfpm_vars_$branch if [ x"$comp_type" == x"intel" ]; then
mv $HOME/openfpm_vars $HOME/openfpm_vars_intel
else
mv $HOME/openfpm_vars $HOME/openfpm_vars_$branch
fi
source $HOME/openfpm_vars_$branch source $HOME/openfpm_vars_$branch
if [ x"$hostname" == x"suitcase" ]; then if [ x"$hostname" == x"suitcase" ]; then
echo "Running make on 1 cores" echo "Running make on 1 cores"
......
File moved
File moved
...@@ -100,6 +100,7 @@ enable_debug ...@@ -100,6 +100,7 @@ enable_debug
with_metis with_metis
with_hdf5 with_hdf5
with_libhilbert with_libhilbert
enable_cuda_on_cpu
enable_scan_coverty enable_scan_coverty
enable_test_performance enable_test_performance
enable_test_coverage enable_test_coverage
...@@ -107,6 +108,7 @@ with_parmetis ...@@ -107,6 +108,7 @@ with_parmetis
enable_se_class1 enable_se_class1
enable_se_class2 enable_se_class2
enable_se_class3 enable_se_class3
with_alpaka
with_action_on_error with_action_on_error
with_boost with_boost
with_boost_libdir with_boost_libdir
...@@ -121,6 +123,8 @@ with_eigen ...@@ -121,6 +123,8 @@ with_eigen
with_vcdevel with_vcdevel
enable_gpu enable_gpu
enable_asan enable_asan
enable_garbageinj
enable_garbageinjv
' '
rm -rf build rm -rf build
...@@ -237,6 +241,9 @@ do ...@@ -237,6 +241,9 @@ do
scan_coverty) scan_coverty)
conf_options="$conf_options -DSCAN_COVERTY=ON" conf_options="$conf_options -DSCAN_COVERTY=ON"
;; ;;
cuda_on_cpu)
conf_options="$conf_options -DCUDA_ON_CPU=ON"
;;
test_performance) test_performance)
conf_options="$conf_options -DTEST_PERFORMANCE=ON" conf_options="$conf_options -DTEST_PERFORMANCE=ON"
;; ;;
...@@ -246,11 +253,22 @@ do ...@@ -246,11 +253,22 @@ do
else else
conf_options="$conf_options -DCMAKE_CUDA_HOST_COMPILER=$(which $CXX)" conf_options="$conf_options -DCMAKE_CUDA_HOST_COMPILER=$(which $CXX)"
fi fi
if [ x"$CXXCUDA" == x"" ]; then
conf_options="$conf_options"
else
conf_options="$conf_options -DCMAKE_CUDA_COMPILER=$(which $CXXCUDA)"
fi
conf_options="$conf_options -DENABLE_GPU=ON" conf_options="$conf_options -DENABLE_GPU=ON"
;; ;;
asan) asan)
conf_options="$conf_options -DENABLE_ASAN=ON" conf_options="$conf_options -DENABLE_ASAN=ON"
;; ;;
garbageinj)
conf_options="$conf_options -DENABLE_GARBAGE_INJECTOR=ON"
;;
garbageinjv)
conf_options="$conf_options -DENABLE_VCLUSTER_GARBAGE_INJECTOR=ON"
;;
*) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
ac_unrecognized_sep=', ' ac_unrecognized_sep=', '
;; ;;
...@@ -493,6 +511,9 @@ do ...@@ -493,6 +511,9 @@ do
vcdevel) vcdevel)
conf_options="$conf_options -DVc_ROOT=$ac_optarg" conf_options="$conf_options -DVc_ROOT=$ac_optarg"
;; ;;
alpaka)
conf_options="$conf_options -DALPAKA_ROOT=$ac_optarg"
;;
*) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
ac_unrecognized_sep=', ';; ac_unrecognized_sep=', ';;
esac esac
...@@ -565,6 +586,7 @@ cd build ...@@ -565,6 +586,7 @@ cd build
## remove enerything ## remove enerything
echo "Calling cmake ../. $conf_options" echo "Calling cmake ../. $conf_options"
printf "cmake ../. $conf_options" > cmake_build_options
rm ../error_code rm ../error_code
DYLD_LIBRARY_PATH=$ld_lib_pathopt cmake ../. $conf_options DYLD_LIBRARY_PATH=$ld_lib_pathopt cmake ../. $conf_options
if [ $? != 0 ]; then if [ $? != 0 ]; then
...@@ -593,6 +615,7 @@ clean: ...@@ -593,6 +615,7 @@ clean:
install: install:
\$(MAKE) -C build \$@ \$(MAKE) -C build \$@
script/install_parallel_debugger
pdata: pdata:
\$(MAKE) -C build \$@ \$(MAKE) -C build \$@
......
...@@ -7,7 +7,7 @@ LDIR = ...@@ -7,7 +7,7 @@ LDIR =
OBJ = main.o OBJ = main.o
%.o: %.cpp %.o: %.cpp
$(CC) -O3 -c --std=c++11 -o $@ $< $(INCLUDE_PATH) $(CC) -O3 -c --std=c++14 -o $@ $< $(INCLUDE_PATH)
grid: $(OBJ) grid: $(OBJ)
$(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS)
......
...@@ -7,7 +7,7 @@ LDIR = ...@@ -7,7 +7,7 @@ LDIR =
OBJ = main.o OBJ = main.o
%.o: %.cpp %.o: %.cpp
$(CC) -O3 -c --std=c++11 -o $@ $< $(INCLUDE_PATH) $(CC) -O3 -c --std=c++14 -o $@ $< $(INCLUDE_PATH)
stencil: $(OBJ) stencil: $(OBJ)
$(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS)
......
...@@ -7,7 +7,7 @@ LDIR = ...@@ -7,7 +7,7 @@ LDIR =
OBJ = main.o OBJ = main.o
%.o: %.cpp %.o: %.cpp
$(CC) -O3 -c --std=c++11 -o $@ $< $(INCLUDE_PATH) $(CC) -O3 -c --std=c++14 -o $@ $< $(INCLUDE_PATH)
periodic: $(OBJ) periodic: $(OBJ)
$(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS)
......
...@@ -7,7 +7,7 @@ LDIR = ...@@ -7,7 +7,7 @@ LDIR =
OBJ = main.o OBJ = main.o
%.o: %.cpp %.o: %.cpp
$(CC) -O3 -c --std=c++11 -o $@ $< $(INCLUDE_PATH) $(CC) -O3 -c --std=c++14 -o $@ $< $(INCLUDE_PATH)
gray_scott: $(OBJ) gray_scott: $(OBJ)
$(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS)
......
...@@ -7,7 +7,7 @@ LDIR = ...@@ -7,7 +7,7 @@ LDIR =
OBJ = main.o OBJ = main.o
%.o: %.cpp %.o: %.cpp
$(CC) -O3 -g -c --std=c++11 -o $@ $< $(INCLUDE_PATH) $(CC) -O3 -g -c --std=c++14 -o $@ $< $(INCLUDE_PATH)
gray_scott: $(OBJ) gray_scott: $(OBJ)
$(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS)
......
...@@ -10,7 +10,7 @@ OBJ = main.o update_new.o ...@@ -10,7 +10,7 @@ OBJ = main.o update_new.o
mpif90 -ffree-line-length-none -fno-range-check -fno-second-underscore -fimplicit-none -mavx -O3 -c -g -o $@ $< mpif90 -ffree-line-length-none -fno-range-check -fno-second-underscore -fimplicit-none -mavx -O3 -c -g -o $@ $<
%.o: %.cpp %.o: %.cpp
$(CC) -O3 -mavx -g -c --std=c++11 -Wno-ignored-attributes -o $@ $< $(INCLUDE_PATH) $(CC) -O3 -mavx -g -c --std=c++14 -Wno-ignored-attributes -o $@ $< $(INCLUDE_PATH)
gray_scott: $(OBJ) gray_scott: $(OBJ)
$(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS)
......
...@@ -7,7 +7,7 @@ LDIR = ...@@ -7,7 +7,7 @@ LDIR =
OBJ = main.o OBJ = main.o
%.o: %.cpp %.o: %.cpp
$(CC) -I/usr/local/cuda/include -O3 -g -c --std=c++11 -o $@ $< $(INCLUDE_PATH) $(CC) -I/usr/local/cuda/include -O3 -g -c --std=c++14 -o $@ $< $(INCLUDE_PATH)
ps_cma_es: $(OBJ) ps_cma_es: $(OBJ)
$(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS)
......
...@@ -7,7 +7,7 @@ LDIR = ...@@ -7,7 +7,7 @@ LDIR =
OBJ = main.o OBJ = main.o
%.o: %.cpp %.o: %.cpp
$(CC) -O3 -c --std=c++11 -o $@ $< $(INCLUDE_PATH) $(CC) -O3 -c --std=c++14 -o $@ $< $(INCLUDE_PATH)
pse_1d: $(OBJ) pse_1d: $(OBJ)
$(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS)
......
...@@ -10,7 +10,7 @@ LDIR = ...@@ -10,7 +10,7 @@ LDIR =
OBJ_128 = main_float128.o OBJ_128 = main_float128.o
%.o: %.cpp %.o: %.cpp
$(CC) -O3 -c --std=c++11 -o $@ $< $(INCLUDE_PATH) $(CC) -O3 -c --std=c++14 -o $@ $< $(INCLUDE_PATH)
# pse_1d_128: $(OBJ_128) # pse_1d_128: $(OBJ_128)
# $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) -lquadmath # $(CC) -o $@ $^ $(CFLAGS) $(LIBS_PATH) $(LIBS) -lquadmath
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment