Difference between revisions of "Solid install"

From Hall A Wiki
Jump to: navigation, search
(Link to new wiki)
 
(49 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== General Instruction ==
+
This page has been moved to [https://solid.jlab.org/wiki/index.php/install https://solid.jlab.org/wiki/index.php/install] in the new [https://solid.jlab.org/wiki SoLID Wiki].  Please do not edit this page.
  
First of all, use 64 bit system, don't use 32 bit system, as it's not future proof and jlab farm has gone to 64 bit Linux system already
+
== Introduction ==
  
Before anything, read general GEMC info at http://gemc.jlab.org
+
You will need two things to run set of things for SoLID simulation:
 +
# [[#SoLID_GEMC|SoLID_GEMC]], which you will need no matter what,
 +
# [[#GEMC|GEMC]] (vanilla kind, easiest to setup) or [[#solgemc|solgemc]] (which uses GEMC as library, require a bit more work).
  
There are a couple way to install and run GEMC.
+
== SoLID_GEMC ==
  
* on ifarm, there are pre-compiled version ready to use and you can easily compile it from source code. then it's easy to running batch mode in a terminal or submit a job to farm. for interactive mode, due to the OpenGL 3D rendering, it's too slow to run if you ssh in and do X11 forward to your local machine. The solution is to run vncserver with X window on ifarm and connect to it remote, this way it's not too slow if your network speed is ok. But this's not recommend because it demands a lot resource from ifarm which is shared by many users.
+
solid_gemc is a collection of SoLID codes for using GEMC. You need it no matter running vanilla GEMC or solgemc.
  
* on your local machine, you will have full power for the interactive mode, but you have to install it first.  The easy way is to install rpm, compile source code on ifarm and copy the executable to your local machine and run it. This is possible if you have the right operating system similar to ifarm system. The general way is to get the source code and its depending packages and compile everything yourself.
+
You can obtain solid_gemc from SoLID SVN
  
== install with rpm ==
+
svn co https://jlabsvn.jlab.org/svnroot/solid/solid_gemc
  
It's best if your computer system is redhat Enterprise Linux 5 (RHEL5) 64bit or Fedora 14 64bit (second choice), you can install the pre-compiled rpm packages.
+
database_io  dir has geometry/field/banks ready to load into the mysql database
 +
script        dir has scripts to setup env and run the simulation code
 +
analysistool  dir has various packages for analyzing simulation result
  
  (do "uname -a" and "more /etc/redhat-release" to check your system version)
+
== GEMC ==
 +
   
 +
The framework use environmental variable JLAB_VERSION to control version
  
For rpm installation, it's easy to use yum (refer to [https://gemc.jlab.org/gemc/Documentation/Entries/2011/1/2_Install_gemc_on_Linux_with_yum.html]). If it somehow doesn't work, download them directly from http://www.jlab.org/12gev_phys/RPMS/ to a local directory, then install them manually as root to run "rpm -i *.rpm".  
+
SoLID uses 1.0 version currently
  
note: 1. you can download and manual install el5 rpms and use them on centos and scientific linux
+
The framework was tested on many platform, but for SoLID use, it's only fully tested on Redhat flavoured linux like CentOS, RHEL, Fedora so far
      2. el5 and el5 client are same packages
+
      3. there's a bug in el5 rpm package for now, after rpm installations, do following to have a workaround
+
          su -l
+
          cd /usr/local/jlab_software/
+
          ln -s Linux_CentOS5.3-x86_64-gcc4.1.2 Linux_RH-x86_64-gcc4.1.2
+
      4. As 2012/01, both el5 and fedora 14 are outdated , they are compiled with geant4.9.3. fedora 15 is up2date and compiled with geant4.9.4p02
+
  
If your computer system is none of above, you can install gemc in a virtual machine. I recommend vmplayer [http://www.vmware.com/go/get-player] and install CentOS 5 x64[http://mirror.centos.org/centos/5/isos/] which is the same system ifarm use.
+
Detailed instruction is here [https://eic.jlab.org/wiki/index.php/Installation_of_framework installation of framework]
Then you can use download rpms for redhat Enterprise Linux 5 and install them manually. Make sure to install vmware-tool in the CentOS guest system for better graphic performance.
+
  
As solid is driving a lot of GEMC development and it's hard for the rpm package release to catch up. Just install rpm packages is not enough. You do need to get production version or latest version of GEMC source code to run simulation for SoLID.
+
== version control (old)==
  
Besides, if you are working with any geometry/field/banks files, you need check out those files located within the same source code tree.
+
'''see [[solid GEMC version historty ]] for the change log'''
  
To check out the source code tree and compile it, see further info below.
+
svn checkout by default always get the latest reversion. If you want a specific reversion, add option "-r revision_number"
  
== Solid GEMC source code ==
+
how to know your current copy reversion number: go to top svn directory, run "svn update", then run "svnversion"
 
+
GEMC source code is stored in SVN, to learn some basic about the version control system, refer to [http://clasweb.jlab.org/wiki/index.php/Subversion Subversion help] and google more.
+
 
+
The location is at
+
 
+
https://clas12svn.jlab.org/repos/trunk/clas12/gemc/production/
+
'''(all svn sub directory in the wiki is relative to this location)'''
+
 
+
To checkout, do this (it will ask your jlab user name and password)
+
 
+
svn co -r VERSION_NUMBER https://clas12svn.jlab.org/repos/trunk/clas12/gemc/production/
+
If you want latest version, remove "-r VERSION_NUMBER"
+
If you want the latest production version, replace the "VERSION_NUMBER" with the latest production version number for SoLID below
+
 
+
'''''latest production version 5583, updated 2012/01/25''''', see [[solid GEMC version historty ]] for details of changes
+
+
how to get working version number: go to top svn directory, run "svn update", then run "svnversion"
+
  
 
You'd better use a graphic svn client to get alerted once updates show up. I like "kdesvn" or you may check out this list [http://en.wikipedia.org/wiki/Comparison_of_Subversion_clients]
 
You'd better use a graphic svn client to get alerted once updates show up. I like "kdesvn" or you may check out this list [http://en.wikipedia.org/wiki/Comparison_of_Subversion_clients]
  
here is a [http://clasweb.jlab.org/websvn/prod/listing.php?repname=CLAS12&path=%2Ftrunk%2Fclas12%2Fgemc%2Fproduction%2F&sc=1#_trunk_clas12_gemc_production_ WebSVN browser]
+
== solgemc ==
 
+
== how to compile GEMC ==
+
 
+
To used latest feature of gemc, you need to compile the code yourself.
+
 
+
=== general way ===
+
 
+
For now, Mauri is working on make the way to compile on general platform.
+
 
+
Some old instruction is [http://clasweb.jlab.org/wiki/index.php/Detailed_instructions here]
+
 
+
=== simple way, on ifarm ===
+
 
+
But it's very easy to compile on ifarm.
+
 
+
So go to ifarml64 which are 64bit CentOS now
+
 
+
then run
+
svn co https://clas12svn.jlab.org/repos/trunk/clas12/gemc/production/
+
cd production
+
source /site/12gev_phys/ce/jlab.csh
+
scons OPT=1 -j4
+
 
+
Then you should have gemc binary code in the current directory.
+
 
+
You can run the newly built gemc on ifarm, but the OpenGL graphic will be slow.
+
 
+
Or if you already gemc rpm installed on your local machine which gives you many gemc dependent library, like root,geant4,evio,clhep etc, you can copy the newly built gemc to your local machine, then you can this new version of gemc. The assumption here is that the version of those external libraries has not changed, only the gemc source code change for this new build.
+
 
+
The binary code compiled on ifarm will work on x64 of RHEL5, fedora14, fedora15.
+
 
+
For your convenience,  here is a copy of the binary code compiled on ifarm (CentOS 5.3 64bit) which can be used on Fedora 14 64bit system also.
+
 
+
http://hallaweb.jlab.org/12GeV/SoLID/download/sim/gemc (based on SVN version 5587 )
+
 
+
 
+
== SoLID built upon GEMC, using it as a toolkit. ==
+
  
 
Another way to run solid simulation is to use GEMC as library,
 
Another way to run solid simulation is to use GEMC as library,
Line 106: Line 51:
 
[[solgemc installation outside JLAB]]
 
[[solgemc installation outside JLAB]]
  
== Other Solid software in svn ==
+
== libsolgem ==
 +
 
 +
The library for digitizing GEM output is found in this repository
 +
 
 +
  svn checkout https://jlabsvn.jlab.org/svnroot/solid/libsolgem/
  
  https://jlabsvn.jlab.org/svnroot/solid
+
The database that corresponds to the GEM configuration in user_geometry3 : solid_gem
  
It includes other Solid related program, like event generator etc.
+
  https://hallaweb.jlab.org/12GeV/SoLID/download/sim/libsolgem/db_gemc.dat

Latest revision as of 15:39, 7 December 2020

This page has been moved to https://solid.jlab.org/wiki/index.php/install in the new SoLID Wiki. Please do not edit this page.

Introduction

You will need two things to run set of things for SoLID simulation:

  1. SoLID_GEMC, which you will need no matter what,
  2. GEMC (vanilla kind, easiest to setup) or solgemc (which uses GEMC as library, require a bit more work).

SoLID_GEMC

solid_gemc is a collection of SoLID codes for using GEMC. You need it no matter running vanilla GEMC or solgemc.

You can obtain solid_gemc from SoLID SVN

svn co https://jlabsvn.jlab.org/svnroot/solid/solid_gemc
database_io   dir has geometry/field/banks ready to load into the mysql database
script        dir has scripts to setup env and run the simulation code
analysistool  dir has various packages for analyzing simulation result

GEMC

The framework use environmental variable JLAB_VERSION to control version

SoLID uses 1.0 version currently

The framework was tested on many platform, but for SoLID use, it's only fully tested on Redhat flavoured linux like CentOS, RHEL, Fedora so far

Detailed instruction is here installation of framework

version control (old)

see solid GEMC version historty for the change log

svn checkout by default always get the latest reversion. If you want a specific reversion, add option "-r revision_number"

how to know your current copy reversion number: go to top svn directory, run "svn update", then run "svnversion"

You'd better use a graphic svn client to get alerted once updates show up. I like "kdesvn" or you may check out this list [1]

solgemc

Another way to run solid simulation is to use GEMC as library,

To get the code specific to SoLID, solgemc:

 svn checkout https://jlabsvn.jlab.org/svnroot/solid/solgemc

solgemc Installation Instructions

solgemc installation outside JLAB

libsolgem

The library for digitizing GEM output is found in this repository

 svn checkout https://jlabsvn.jlab.org/svnroot/solid/libsolgem/

The database that corresponds to the GEM configuration in user_geometry3 : solid_gem

  https://hallaweb.jlab.org/12GeV/SoLID/download/sim/libsolgem/db_gemc.dat