How to obtain EMAN2/SPARX

Please visit the EMAN2 website to download the nightly release of EMAN2/SPARX:

where you can find links to the source code and the binary distributions for Linux, Mac OS X and Windows.

How to install EMAN2/SPARX

The easiest way of installing EMAN2/SPARX is to install the binary distribution, which is also strongly recommended. If you are interested in knowing the details of implementation or plan to write/revise low-level C++ codes, you may also build EMAN2/SPARX from the source code, but it will be considerably more difficult.

Install the binary distribution

It is suggested to install EMAN2/SPARX under your home directory.

If you are using Linux, download the file which fits your platform, the current file name is eman2.daily.linux.gcc4.tar.bz2 (may change in the future), save it in the home directory, then use the following commands:

    cd $HOME
    tar --bzip2 -xvf eman2.daily.linux64.gcc4.tar.bz2
    cd EMAN2
    ./eman2-installer

The installer will ask you about the version of python your are using. Then it will generate a file named eman2.bashrc. By running source eman2.bashrc the environmental variables will be set correctly.

When installing on a cluster, it is preferable to switch off bdb database cache (otherwise nodes can become out of sync with the front machine and parameters stored in the bdb database by the program running on the cluster may become invisible to the front machine). The cluster installation is thus preferably done by adding a flag to the installer:

    ./eman2-installer  --disable_cache

Note this also switches off the GUI usage in interactive SPARX, a feature normally not of much use when working on remote machines. To active one of the options one has to modify appropriate flags in EMAN2/lib/global_def.py.

After that please follow the instruction of MPI-installation to install the MPI-python binding and enable the MPI version of sparx.

Problem with memory fragmentation under Linux

Due to a recent change of memory management algorithm in Linux kernel SPARX will tend to occupy an increasing amount of memory and the program may eventually crash. This is caused by a new memory defragmentation algorithm implemented recently (~2010?) in Linux kernel. We determined that one can all but eliminate the problem by add changing the setting of this algorithm, which requires addition to cshell (or, equivalently, to bash), of either of the following statements:

setenv MALLOC_MMAP_THRESHOLD_ 32768

export MALLOC_MMAP_THRESHOLD_=32768

Install from the source code

Detailed step-by-step instructions can by found in SourceCodeInstallation.

Installer (last edited 2022-10-22 09:48:54 by ElmarBehrmann)