Download and Installation: Difference between revisions

From OxDNA
Jump to navigation Jump to search
 
(18 intermediate revisions by 3 users not shown)
Line 1: Line 1:
In this section, we outline the procedure for compiling oxDNA. Before starting, we recall that the only supported features of oxDNA are
In this section, we outline the procedure for dowloading and compiling oxDNA.
 
*Molecular and Brownian dynamics
*Regular Monte Carlo
*External forces
*A stand-alone single- and double-strand generator (<tt>UTILS/generate-sa.py</tt>)
*An output-converter from oxDNA configuration files to .pdb and VMD-supported .xyz files (<tt>UTILS/traj2vis.py</tt>)
 
[[Features|This]] page contains a more detailed list.


==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 writtern in standard c++, it '''should''' be also compatible with other compilers.
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.


===Operative 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, provided that the makefile is changed accordingly.
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===
oxDNA does not depend on any external library apart from the standard c++ library and therefore is completely self-contained.
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 GPU-enabled oxDNA requires CUDA >= 3.2.


==Download==
==Download==
The source package can be downloaded [http://ubuntuone.com/2stmYguAZwiLO6wtNpjHaG here]. There are currently no available binary packages.
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


==Installation==
<pre>
To install the program, untar <tt>oxDNA.tar.gz</tt> and enter the oxDNA directory. Compile the code with
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>


<tt>make</tt>
===Compile options===


See [[Documentation]] for <tt>make</tt> options. If you want to compile oxDNA with the Intel C++ compiler (icpc) use
The following parameters can be passed to cmake:


<code>make intel=1</code>
*'''-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 an <tt>oxDNA</tt> executable in the <tt>Release</tt> directory. The usage of oxDNA is
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:


<code>
<pre>
oxDNA <input>
oxDNA <input>
</code>
DNAnalysis <input>
confGenerator <input> <box_size/density> # the second argument will be interpreted as a density if it is less than 2.0
</pre>


The complete list of supported input options can be found [[Documentation#Input_file|here]]. If you want some hands-on examples, there are some in the [[Examples|EXAMPLES]] directory.
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.