Download and Installation: Difference between revisions
Rovigattil (talk | contribs) m (→Download) |
Rovigattil (talk | contribs) m (→Compiler) |
||
(5 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
In this section, we outline the procedure for compiling oxDNA | In this section, we outline the procedure for dowloading and compiling oxDNA. | ||
==Requirements== | ==Requirements== | ||
===Compiler=== | ===Compiler=== | ||
The recommended compiler is gcc 4.6.x. oxDNA compilation has been thoroughly tested with gcc >= 4.1.x and icpc >= 10. Note that compiling with gcc 4.6.x rather than with gcc 4.1.x results in a significant increase in performances. Since oxDNA is | The recommended compiler is gcc 4.6.x. oxDNA compilation has been thoroughly tested with gcc >= 4.1.x and icpc >= 10. Note that compiling with gcc 4.6.x rather than with gcc 4.1.x results in a significant increase in performances. Since oxDNA is written in standard c++, it '''should''' be also compatible with other compilers. Optionally, oxDNA can be compiled to run on [http://www.nvidia.com NVIDIA] GPUs by enabling [http://www.nvidia.com/object/cuda_home_new.html CUDA] support at compile time. | ||
===Operating system=== | ===Operating system=== | ||
oxDNA has been tested on Linux (kernel >= 2.6.x) and Mac OS X. Since it is written in ANSI c++, it '''should''' also work on other OSes | oxDNA has been tested on Linux (kernel >= 2.6.x) and Mac OS X. Since it is written in ANSI c++, it '''should''' also work out-of-the-box on other OSes. | ||
===Dependencies=== | ===Dependencies=== | ||
The pre-compilation stage requires [http://www.cmake.org/ cmake], while compilation is carried out with [http://www.gnu.org/software/make/ GNU Make]. | |||
The CPU-only oxDNA does not depend on any external library apart from the standard c++ library. | |||
The | |||
= | The GPU-enabled oxDNA requires CUDA >= 3.2. | ||
==Download== | |||
There are currently no available binary packages for oxDNA. The last stable source package can be downloaded | |||
[http://sourceforge.net/projects/oxdna/files/ here], while bleeding edge (possibly unstable) versions are available | |||
''via'' a [http://subversion.apache.org/ subversion] repository, accessible [http://sourceforge.net/p/oxdna/code/HEAD/tree/ here]. | |||
==Compilation== | |||
We recommend using an out-of-source build to compile oxDNA. A standard out-of-source build is as follows | |||
<pre> | <pre> | ||
make | cd oxDNA | ||
mkdir build | |||
cd build | |||
cmake .. # cmake options go here, more on this later | |||
make -j4 # use 4 threads for compilation, sensibly shortening compiling time | |||
</pre> | </pre> | ||
The compilation process will generate | ===Compile options=== | ||
The following parameters can be passed to cmake: | |||
*'''-DDebug=1''' oxDNA will be compiled with debug flags (both for nvcc and gcc). | |||
*'''-DG=1''' oxDNA will be compiled with both debug and optimization flags. | |||
*'''-DINTEL=1''' oxDNA will be compiled using the Intel icpc compiler. | |||
*'''-DCUDA=1''' oxDNA will be compiled with CUDA support. This requires a CUDA runtime version >= 3.2. | |||
*'''-DMPI=1''' oxDNA will be compilted with MPI support. This is currently an '''unsupported''' feature and it should be used by developers only. | |||
The compilation process will generate three executables in the build/bin folder: <tt>oxDNA</tt>, <tt>DNAnalysis</tt> and <tt>confGenerator</tt>. | |||
Their usage is as follows: | |||
<pre> | <pre> | ||
oxDNA <input> | oxDNA <input> | ||
DNAnalysis <input> | |||
confGenerator <input> <box_size/density> # the second argument will be interpreted as a density if it is less than 2.0 | |||
</pre> | </pre> | ||
If you want some oxDNA hands-on examples, there are some in the <tt>EXAMPLES</tt> subdirectory, some of which are documented in more detail in [[:Category:Examples|Examples]] section. | |||
Latest revision as of 14:58, 3 December 2014
In this section, we outline the procedure for dowloading and compiling oxDNA.
Requirements
Compiler
The recommended compiler is gcc 4.6.x. oxDNA compilation has been thoroughly tested with gcc >= 4.1.x and icpc >= 10. Note that compiling with gcc 4.6.x rather than with gcc 4.1.x results in a significant increase in performances. Since oxDNA is written in standard c++, it should be also compatible with other compilers. Optionally, oxDNA can be compiled to run on NVIDIA GPUs by enabling CUDA support at compile time.
Operating system
oxDNA has been tested on Linux (kernel >= 2.6.x) and Mac OS X. Since it is written in ANSI c++, it should also work out-of-the-box on other OSes.
Dependencies
The pre-compilation stage requires cmake, while compilation is carried out with GNU Make.
The CPU-only oxDNA does not depend on any external library apart from the standard c++ library.
The GPU-enabled oxDNA requires CUDA >= 3.2.
Download
There are currently no available binary packages for oxDNA. The last stable source package can be downloaded here, while bleeding edge (possibly unstable) versions are available via a subversion repository, accessible here.
Compilation
We recommend using an out-of-source build to compile oxDNA. A standard out-of-source build is as follows
cd oxDNA mkdir build cd build cmake .. # cmake options go here, more on this later make -j4 # use 4 threads for compilation, sensibly shortening compiling time
Compile options
The following parameters can be passed to cmake:
- -DDebug=1 oxDNA will be compiled with debug flags (both for nvcc and gcc).
- -DG=1 oxDNA will be compiled with both debug and optimization flags.
- -DINTEL=1 oxDNA will be compiled using the Intel icpc compiler.
- -DCUDA=1 oxDNA will be compiled with CUDA support. This requires a CUDA runtime version >= 3.2.
- -DMPI=1 oxDNA will be compilted with MPI support. This is currently an unsupported feature and it should be used by developers only.
The compilation process will generate three executables in the build/bin folder: oxDNA, DNAnalysis and confGenerator. Their usage is as follows:
oxDNA <input> DNAnalysis <input> confGenerator <input> <box_size/density> # the second argument will be interpreted as a density if it is less than 2.0
If you want some oxDNA hands-on examples, there are some in the EXAMPLES subdirectory, some of which are documented in more detail in Examples section.