forked from nbodyx/Nbody6ppGPU
-
Notifications
You must be signed in to change notification settings - Fork 1
lwang-astro/betanb6pp
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Welcome to use Nbody6++, which is the parallel version of Nbody6. Please send Email to [email protected] if you find some problems during using the code. --------------------------------------------------------------------- To install Nbody6++, please use: ./configure [options] make make install The configure has several optional features, please use ./configure --help to check these features. ---------------------- Some basice features: --Install path: The default install path is /usr/local, if you want to change another path, please use: ./configure --prefix=[YOURPATH] Replace [YOURPATH] to the full path that you want to install Nbody6++. There will be "bin", "doc", ["include", "lib"] created in your install path. --GPU: The GPU support is enabled in default case, if you want to disable GPU acceleration, please use: ./configure --disable-gpu --MPI: The MPI is enabled in default case, if you want to disable MPI, please use: ./configure --disable-mpi **Notice if no Fortran MPI compiler (mpif77) exist, the configure cannot pass, the --disable-mpi should be added manually --AVX/SSE: The AVX is enable in default case, you can choose no AVX/SSE, SSE and AVX, the option is: ./configure --enable-simd=[arg] Replace [arg] by "no", "sse", "avx". **Notice when the CPU don't support AVX/SSE, the code can still be compiled if the compiler support them. In this case a warning will appear during configure. Please be careful for this warning. It means the code cannot be used in the current machine. In the case for computer cluster, the code may be compiled in the login node without AVX/SSE support but used in working nodes that support AVX/SSE. Thus the configure does not switch off AVX/SSE even the CPU doesn't support. --HDF5 output format: The HDF5 is disabled in default case, if you want to enable it, please use: ./configure --enable-hdf5 **Notice when MPI is used, HDF5 compiler should be parallel version with Fortran enabled. If you want to use non-parallel version of HDF5 compiler with no MPI, please add '--disable-mpi' during comfigure --extra tools: There are some extra tools and libraries for reading conf.3 and do some basic analysis, the default case it's disabled, if you want to compile them, please use: ./configure --enable-tools All these options can be used in the same time. For example: ./configure --prefix=/opt/nbody6++ --enable-tools --enable-hdf5 --------------------------------------------------------------------- ***Important notice: * When large NMAX is used, sometimes the segmentational fault happened after the simulation begin. This is due to the stack memory overflow. In this case, you should always run $ ulimit -s unlimited before the code is started in the same shell. Be careful that the "ulimit" only works for current shell, thus it's need to be used every time when a new shell is opened. You can put it in .bashrc or .bash_profile to always load it when a new shell is open. * In some Linux systems (e.g. Ubuntu), when the large NMAX is used, the compiling crash with the error: "*** R_X86_64_PC32 against symbol ***" This error is related to the memory model of the Linux system. The detail of memory model is shown in https://software.intel.com/en-us/node/579558 The solution is to add the configure option "--enable-mcmodel=large" In this case, the code performance may slightly decrease compared with "mcmodel=medium/small" --------------------------------------------------------------------- Please check doc/Nbody6++_manual.pdf for the detail description of Nbody6++
About
Nbody6++GPU
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- Fortran 85.9%
- C++ 8.0%
- Cuda 2.3%
- Jupyter Notebook 1.2%
- M4 0.9%
- C 0.6%
- Other 1.1%