Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
auto3dem:install [2015/04/14 17:19]
gcardone [Compiling image reconstruction codes]
auto3dem:install [2015/07/07 19:06] (current)
gcardone
Line 6: Line 6:
   * Uncompress the archive downloaded   * Uncompress the archive downloaded
   * Move the directory to the directory where you want to install the programs   * Move the directory to the directory where you want to install the programs
-  * Open a terminal and launch the installation script +  * Open a terminal and launch the installation script <​code>​ 
- +./​auto3dem_install
-<WRAP center round box 90%> +
-Linux <​code>​ +
-make_all [serial | parallel] [all | gui | nogui]+
 </​code>​ </​code>​
-Mac OSX <​code>​ +  * The script will detect the platform and by default will build all the applicationsincluding those based on a graphical user interface (GUI), assuming the GNU compilers are availableThe computing-intensive codes are parallelized ​using MPI, and the parallel version is compiled by default. You can change ​the default settings by adding specific ​options. For a complete list of them type ''​./​auto3dem_install --help''​
-mac_make_all [serial | parallel] [all | gui | nogui] +
-</​code>​ +
-</​WRAP>​ +
- +
-Choose serial or parallel to build image reconstruction codes that run +
-in serial or parallel moderespectivelyAll parallelization is done +
-using MPI. The second option specifies whether allonly GUI-based, or +
-only non-GUI based applications should be built. +
-\\ +
-You will generally want to build the entire suite, but these options +
-are provided both for developers and those who may not have all of the +
-necessary Motif libraries for the GUIs.+
    
-<WRAP center round box 85%> 
-NOTES: ​ 
-  * For serial mode, the FC and CC macros in the make.inc.serial file point to the gfortran and gcc compilers, respectively. You will need to edit this file if you are using other compilers. 
-  * For parallel mode, the FC and CC macros in the make.inc.parallel file point to the mpif90 and mpicc scripts, respectively. You will need to edit this file if you are using other compilation scripts. 
-  * In the future we hope to develop a more robust build system, but for now you're stuck having to do some of the work on your own if using other compilers. 
-</​WRAP>​ 
- 
   * Provide path information for binaries and perl scripts. For example, C shell users should add the following to your .cshrc file, where x.xx is the auto3dem version. <​code>​   * Provide path information for binaries and perl scripts. For example, C shell users should add the following to your .cshrc file, where x.xx is the auto3dem version. <​code>​
 set path = (/​path_to_auto3dem/​auto3dem_vx.xx/​bin $path) set path = (/​path_to_auto3dem/​auto3dem_vx.xx/​bin $path)
-</​code>​ +</​code>​ Of course, it's probably more convenient to create a symbolic link named auto3dem that points to the latest version.
-Of course, it's probably more convenient to create a symbolic link +
-named auto3dem that points to the latest version.+
  
 +===== Compilers =====
 +The installation script assumes that GNU compilers are available on the computer and will try to compile the programs using those. If you want to use different compilers, you can specify them with the option //​--compiler//​. The settings for some compilers are already available, and the option //--help// provides a list of them. You can add the settings for a compiler that is not listed by adding a file for the specific combination you intend to use (platform, compiler, parallel or serial) in the //Make// directory, using the ones already present as templates. ​
  
 ===== Library dependencies ===== ===== Library dependencies =====
- 
  
 AUTO3DEM does not depend on external programs, but relies on libraries of the operating system that are not necessarily present by default. AUTO3DEM does not depend on external programs, but relies on libraries of the operating system that are not necessarily present by default.
Line 47: Line 24:
   * [[auto3dem:​installation:​macosx_libraries|Mac OSX]]   * [[auto3dem:​installation:​macosx_libraries|Mac OSX]]
  
-===== Perl requirements =====+===== Python ​requirements ===== 
 + 
 +The python programs provided should run on Python version 2.3 and older. 
 +The program to plot one or multiple FSC curves, //​a3dm_plot_fsc.py//,​ requires the modules //Numpy// and //​Matplotlib//,​ which usually are not installed by default but are available from the package manager of most Linux distributions.  ​
  
 +===== Perl requirements =====
  
-auto3dem and the auxilliary routines setup_rmc, handflip, +//auto3dem// and the auxilliary routines ​//setup_rmc////handflip//
-remove_useless,​ and findbest were developed using Perl version 5.8.5,+//remove_useless//, and //findbest// were developed using Perl version 5.8.5,
 but will probably run using slightly older versions. It is expected but will probably run using slightly older versions. It is expected
 that you have the standard set of CPAN modules, including Cwd, that you have the standard set of CPAN modules, including Cwd,
Line 61: Line 42:
 FSC curves. FSC curves.
  
 +===== Running parallel jobs =====
 +
 +AUTO3DEM currently is capable to run under the PBS and SGE batch schedulers. In
 +your job script, you will need to include the flag (-V) that exports
 +all environment variables to the job. Do not explicitly include a
 +nodefile in the auto3dem command since it is automatically passed
 +through the Perl %ENV hash.
 +
 +If you are running on a system that is not under control of a batch
 +scheduler, you can specify that particular nodes be used with the
 +-nodefile flag. Depending on your computing environment,​ specification
 +of a nodefile may not be necessary.
  
 ===== Email notification ===== ===== Email notification =====
- 
  
 auto3dem has the capability to send email notifications at the end of auto3dem has the capability to send email notifications at the end of
-each iteration. Add the following line to your auto3dem input file +each iteration. Add the following line to your auto3dem input file <​code>​
 auto recipient address1 [address2 ...] auto recipient address1 [address2 ...]
 +</​code>​
 In order for this to work correctly, you will need to have the mutt In order for this to work correctly, you will need to have the mutt
 email program installed and properly configured. email program installed and properly configured.
  
  
-===== Compiling image reconstruction codes =====+===== Additional notes ===== 
 +==== Compiling image reconstruction codes ====
  
  
Line 87: Line 79:
   ANSI C compiler   ANSI C compiler
   MPI libraries (parallel mode only)   MPI libraries (parallel mode only)
- 
-The codes make extensive use of Fortran 90 features - dynamic memory 
-management, newer intrinsic functions, array syntax, etc. - and will 
-not compile under Fortran 77. 
  
 Our codes have been successfully compiled and run using the gfortran Our codes have been successfully compiled and run using the gfortran
 and ifort Fortran compilers, the icc and gcc C compilers, and and ifort Fortran compilers, the icc and gcc C compilers, and
-MPICH2. That said, we expect that any standard compilers and MPI+the MPICH2 ​and openMPI libraies. That said, we expect that any standard compilers and MPI
 implementation will work. implementation will work.
  
-To create binaries of the image reconstruction codes, simply ​execute +To create binaries of the image reconstruction codes, simply ​launch ​the installation script. This
-'​make_all mode' (mode = parallel or serial) on the command line. This+
 script sets symbolic links to the appropriate make include and perl script sets symbolic links to the appropriate make include and perl
 module files, enters each of the program and library directories,​ and module files, enters each of the program and library directories,​ and
Line 104: Line 91:
 directory. directory.
  
-The make.inc.serial and make.inc.parallel files specify the compilers +==== Programs providing a graphical user interface ====
-and flags that will be used by the Makefiles. These are fairly generic +
-and may need to be manually edited if you are using anything other +
-than the GNU compilers.+
  
- +//RobEM////fixpif////oned//, and //​ctfdisp// ​all make use of the **Motif** graphical
-===== Compiling image preprocessing applications ===== +
- +
- +
-RobEM, fixpif, oned, and ctfDisp ​all make use of the Motif graphical+
 user interface toolkit. You will need to install the appropriate user interface toolkit. You will need to install the appropriate
 library if you wish to use these programs. library if you wish to use these programs.
Line 143: Line 123:
   % unsetenv LANG   % unsetenv LANG
  
-===== Running parallel jobs ===== 
- 
-AUTO3DEM currently runs under the PBS and SGE batch schedulers. In 
-your job script, you will need to include the flag (-V) that exports 
-all environment variables to the job. Do not explicitly include a 
-nodefile in the auto3dem command since it is automatically passed 
-through the Perl %ENV hash. 
- 
-If you are running on a system that is not under control of a batch 
-scheduler, you can specify that particular nodes be used with the 
--nodefile flag. Depending on your computing environment,​ specification 
-of a nodefile may not be necessary.