Revision dd8daa98413988b11c594e5a3bff8f5659d7ecf7 authored by Florent Renaud on 26 June 2014, 09:41:19 UTC, committed by Florent Renaud on 26 June 2014, 09:41:19 UTC
Originally released on 18 March 2013
Based on Nbody6 downloaded on 29 January 2013
1 parent edab1b7
Raw File
README2
  Compilation of NBODY6/7 versions (10/2012)

A guide for compiling different versions of NBODY6/7.
First we list some alternatives ways, all from the directory GPU2.

1. Standard NBODY6, compiled by 'make gpu' which produces 'nbody6.gpu'.

2. Standard NBODY6 with KS block-steps, 'make -f Makefile6 gpu'.
   This produces the executable 'nbody6b.gpu', also in dir 'GPU2/run'.

3. Standard NBODY6 & ARC, by 'make -f Makefile7 gpu', gives 'nbody7.gpu'.
   The corresponding makefile is denoted 'Makefile_arc'.

4. ARC with block-steps, by 'make -f Makefile8 gpu', gives 'nbody7b.gpu'.

Four corresponding codes with SSE can be compiled by the above commands,
substituting 'gpu' by 'sse'. This results in the executables 'nbody6.sse',
'nbody6b.sse', 'nbody7.sse' & 'nbody7b.sse' in dir run. It is a good idea
to 'make clean' in dir GPU2 & Ncode or Block before compiling new versions.

To achieve the above, only two tar files are made. As before, 'gpu2.tar.gz'
contains the slightly revised (i.e. gpunb.sse.cpp) tar file for dir GPU2.
The makefiles employed are: Makefile, Makefile6, Makefile7, Makefile8,
Makefile_gpu, Makefile_arc & Makefile_blk with usage illustrated here.

The tar file 'nbody6.tar.gz' now holds the following directories:
Ncode, Docs, Chain, Nchain as before. Then there are two new directories
for Algorithmic Chain Regularization, ARchain and ARint, and finally the
directory Block for the new KS block-step method.

The following different versions can be compiled without GPU:

5. 'make nbody6' in dir Ncode yields the standard 'nbody6'.

6. 'make nbody6' in dir Block produces 'nbody6b'.

7. 'make -f Makefile7 nbody6' in dir Ncode results in 'nbody7'.

8. 'make -f Makefile7 nbody6' in dir Block gives 'nbody7b'.

There is a template 'inpn' in dir Docs for NBODY7. In the KS block-step
version, ETAU = 0.3 is recommended to compensate for time-step quantization.

Some simplification is achieved by including dummy routines in dir Ncode not
used by standard NBODY6; for example brake4.f and its calling tree. However,
this only entails extra compilations and no harm is done, provided the NBODY7
option #11 = 0. Fortunately there is no change to the common6.h variables.
Also note that the common6.h and params.h soft links originate in dir Ncode
im order to ensure correct alignment for the different combinations.

The new codes should be considered as beta versions for now. This text file
will be included in the directories Docs and GPU2 as 'README2'.

Keigo and Sverre
back to top