How to compile DOCK: Difference between revisions

From DISI
Jump to navigation Jump to search
(Adapt to newer dock Makefile)
No edit summary
(16 intermediate revisions by 6 users not shown)
Line 1: Line 1:
=== compiling dock3.7 ===
  1. log into psi (portland fortran compiler is on psi)
  2. export PATH=/nfs/soft/pgi/current/linux86-64/12.10/bin:$PATH
  3. source Trent's virual environment (source /nfs/home/tbalius/zzz.virtualenvs/virtualenv-1.9.1/myVEonGimel/bin/activate)
  4. source /nfs/soft/pgi/env.csh
== DOCK 3.7 ==
Frist you need the source code:
* lab members and other developers may check out dock from [[Github]]
* others can request the distrabution here [http://dock.compbio.ucsf.edu/Online_Licensing/dock_license_application.html]
=== compiling dock ===
To compile DOCK go to path/DOCK/src/i386
make
make DEBUG=1
make SIZE=32 [64]
make clean
Note:
*To compile with portland group compilers
** go to a machine were pgf linsence is installed (sgehead1 or psi).
*To add a file for compilation, add the xxxx.f file to path/DOCK/src/ and add xxxx.o to i386/Makefile object list.
=== debuging dock ===
Debugging :
  pgdbg  path/DOCK/src/i386/dock_prof64
=== profiling dock ===
Profiling:
make pgprofile
less pgprof.out
pgprof - opens a GUI profiler that interprets pgprof.out !
you may also do the following:
make dock_prof64
cd /dir/test
/dockdir/dock_prof64 INDOCK
less pgprof.out
make gmon.out
less gmon.out
make gprofile
less gprofile.txt
== DOCK 3.5.54 ==
This is for the Shoichet Lab local version of DOCK 3.5.54 trunk.
'''Checking out the source files'''
'''Checking out the source files'''
* change to cshell.
* create a directory for the source files.
* change to this directory.
* set the environment variable for CVS.
* check out the dock sources.
* check out the auxilliary libraries.


As commands:
Commands:
  csh
  csh
  mkdir /where/to/put/dock35
  mkdir /where/to/put
  cd /where/to/put/dock35
  cd /where/to/put
  setenv CVSROOT /raid1/cvs
svn checkout file:///raid4/svn/dock
  cvs co dock
svn checkout file:///raid4/svn/libfgz
  cvs co libfgz
 
'''Compiling the program on our cluster'''
 
First, you need to set the path to the PGF compiler by adding this line to your .login file (at the end):
 
  setenv DOCK_BASE ~xyz/dockenv
  echo DOCK_BASE set to $DOCK_BASE.
  source $DOCK_BASE/etc/login


'''Compiling the program'''
When you login to sgehead now, you should see the "Enabling pgf compiler" message


On a 64-bit machine, e.g. one of the compilation nodes on the shared QB3 cluster (optint1 or optint2):
Commands:
ssh sgehead
cd /where/to/put/libfgz/trunk
make
 
Since we still have some 32bit computers, you'll also want to do
make SIZE=32
before leaving the libfgz branch and going to DOCK:
 
cd ../../dock/trunk/i386
make
 
This makes the 64 bit version. Some options:
 
make SIZE=32
 
Makes the 32bit version, useful for running on the cluster since some machines are older.
 
make DEBUG=1
 
Makes a debug version that will report line numbers of errors and is usable with pgdbg (the Portland Group Debugger), which is useful when writing code but is 10x (or more) slower.
 
'''Compiling the program on the shared QB3 cluster'''
 
On one of the compilation nodes on the shared QB3 cluster (optint1 or optint2):


  ssh optint2
  ssh optint2
  cd libfgz/
  cd /where/to/put/libfgz/trunk
  cp Makefile Makefile.old
  cp Makefile Makefile.old
  modify Makefile:
  modify Makefile:
  comment out the following:
  #FC = gfortran -O3
  #CC = gcc -O3
   uncomment the following:
   uncomment the following:
   FC = ifort -O3
   FC = ifort -O3
   CC = icc -O3
   CC = icc -O3
  make
  make
  cd ../i386/
  cd ../../dock/trunk/i386
  cp Makefile Makefile.old
  cp Makefile Makefile.old
  modify Makefile
  modify Makefile
  comment out the following:
  #F77 = pgf77
  #FFLIBS = -lc -lgcc_eh -lgfortran
  #FFLAGS = -byteswapio ...
   uncomment the following:
   uncomment the following:
   F77 = ifort
   F77 = ifort
   FFLAGS = -O3 -convert big_endian
   FFLAGS = -O3 -convert big_endian
  make
  make dock
 


[[Category:Tutorials]]
[[Category:Tutorials]]
[[Category:DOCK]]

Revision as of 21:06, 20 January 2017


compiling dock3.7

 1. log into psi (portland fortran compiler is on psi)
 2. export PATH=/nfs/soft/pgi/current/linux86-64/12.10/bin:$PATH	
 3. source Trent's virual environment (source /nfs/home/tbalius/zzz.virtualenvs/virtualenv-1.9.1/myVEonGimel/bin/activate)
 4. source /nfs/soft/pgi/env.csh



DOCK 3.7

Frist you need the source code:

  • lab members and other developers may check out dock from Github
  • others can request the distrabution here [1]

compiling dock

To compile DOCK go to path/DOCK/src/i386

make
make DEBUG=1
make SIZE=32 [64]
make clean

Note:

  • To compile with portland group compilers
    • go to a machine were pgf linsence is installed (sgehead1 or psi).
  • To add a file for compilation, add the xxxx.f file to path/DOCK/src/ and add xxxx.o to i386/Makefile object list.

debuging dock

Debugging :

 pgdbg  path/DOCK/src/i386/dock_prof64

profiling dock

Profiling:

make pgprofile
less pgprof.out
pgprof - opens a GUI profiler that interprets pgprof.out !

you may also do the following:

make dock_prof64
cd /dir/test 
/dockdir/dock_prof64 INDOCK
less pgprof.out
make gmon.out
less gmon.out
make gprofile
less gprofile.txt

DOCK 3.5.54

This is for the Shoichet Lab local version of DOCK 3.5.54 trunk.

Checking out the source files

Commands:

csh
mkdir /where/to/put
cd /where/to/put
svn checkout file:///raid4/svn/dock
svn checkout file:///raid4/svn/libfgz

Compiling the program on our cluster

First, you need to set the path to the PGF compiler by adding this line to your .login file (at the end):

setenv DOCK_BASE ~xyz/dockenv
echo DOCK_BASE set to $DOCK_BASE.
source $DOCK_BASE/etc/login

When you login to sgehead now, you should see the "Enabling pgf compiler" message

Commands:

ssh sgehead
cd /where/to/put/libfgz/trunk
make

Since we still have some 32bit computers, you'll also want to do

make SIZE=32

before leaving the libfgz branch and going to DOCK:

cd ../../dock/trunk/i386
make

This makes the 64 bit version. Some options:

make SIZE=32

Makes the 32bit version, useful for running on the cluster since some machines are older.

make DEBUG=1 

Makes a debug version that will report line numbers of errors and is usable with pgdbg (the Portland Group Debugger), which is useful when writing code but is 10x (or more) slower.

Compiling the program on the shared QB3 cluster

On one of the compilation nodes on the shared QB3 cluster (optint1 or optint2):

ssh optint2
cd /where/to/put/libfgz/trunk
cp Makefile Makefile.old
modify Makefile:
 uncomment the following:
 FC = ifort -O3
 CC = icc -O3
make
cd ../../dock/trunk/i386
cp Makefile Makefile.old
modify Makefile
 uncomment the following:
 F77 = ifort
 FFLAGS = -O3 -convert big_endian
make dock