Ab initio grid chemical software ports – transferring knowledge from EGEE to Polish NGI
description
Transcript of Ab initio grid chemical software ports – transferring knowledge from EGEE to Polish NGI
EUROPEAN UNION
Polish InfrastructurePolish Infrastructurefor Supporting Computational Sciencefor Supporting Computational Science
in the European Research Spacein the European Research Space
Ab initioAb initio grid chemical software ports – grid chemical software ports – transferring knowledge from EGEEtransferring knowledge from EGEE
to Polish NGIto Polish NGI
M. SterzelM. Sterzel, P. Lasoń, Ł. Flis, K. Noga, Ł. Kitowski, P. Lasoń, Ł. Flis, K. Noga, Ł. KitowskiACC CYFRONET AGHACC CYFRONET AGH
EGEE User Forum 5
Uppsala, 13 March 2010
2
OutlineOutline
Aim of this talkShare our experience concerning porting and installing scientific applications on Polish Grid Infrastructure
Parts of the talk topics PL-Grid EGEE – models of software installation Our implementation Modules package SAM software tests Final remarks
PL-GridPL-Grid
Consortium: Academic Computer Center Cyfronet AGH – Coordinator Poznań Supercomputing and Networking Center Wrocław Centre for Networking and Supercomputing Interdisciplinary Center for Math. and Computat. Modelling Academic Computer Center in Gdańsk
PL-Grid Project (2009-2012) Got funded March 2, 2009 (via European Structural Funds) Aims to provide the Polish scientific community with an IT
platform based on Grid computer clusters, enabling e-science research in various fields.
Web page: www.plgrid.pl
3
EGEE – software installation modelsEGEE – software installation models
A VO designated for software application Gaussian Turbomole …
Storage of binaries in LFC catalogueDirect installation of binaries
in $VO_{VO-name}_SW_DIRDirect compilation & execution
a package source file(s) sent to WN compiled & executed on WN
4
ProblemsProblems
A VO designated for software application Only one software package accessible Makes every admin headache when new application added User has to belong to many VOs
Storage of binaries in LFC catalogue More convenient but without care no protection for binaries
Direct installation of binaries
in $VO_{VO-name}_SW_DIR Convenient, but without care we can end up with several
instances of the same software in many places
Direct compilation & execution Useful for small program files only requires working compiler on WN
5
SolutionSolution
Single VO – vo.plgrid.plSoftware installed on each site in admin’s favourite
locationACL for better permission controlAccess to each scientific application via Modules
package – software environment management$VO_VO_PLGRID_PL_SW_DIR/scripts contains
a series of shell related Modules configuration files: modules.{bash,tcsh,csh,zsh}
Site which installs software package for the first time provides a module file and SAM test for it
Extensive use of VOMS roles in special cases
6
ModulesModules
... Modules – Software Environment Management
Package allows dynamic modification of a user's environment via modulefiles
Each modulefile contains the information needed to configure the shell for a given application
Once the Modules package is initialized, the environment can be modified on a per-module basis using the module command which interprets modulefiles
Modules can be loaded and unloaded dynamically All popular shells are supported System is useful in managing different versions of application(s)
7
modulefilemodulefileproc ModulesHelp { } {
puts stderr "\tName: Turbomole”
puts stderr "\tURL http://www.turbomole.com"
puts stderr "\tProvides: dscf,grad,ridft,rdgrad,mpgrad,...”
puts stderr "\tLocal docs: file:\$TURBODIR/DOK”
}
module-whatis "Turbomole computational chemistry package, v6.1”
set TURBODIR /software/local/Turbomole/6.1/TURBOMOLE
setenv TURBODIR $TURBODIR
set TURBOARCH em64t-unknown-linux-gnu
setenv TURBOARCH $TURBOARCH
prepend-path PATH $TURBODIR/bin/$TURBOARCH:$TURBODIR/scripts
prepend-path LD_LIBRARY_PATH $TURBODIR/lib/$TURBOARCH
set curMod [module-info name]
if { [ module-info mode load ] } {
puts stderr " '$curMod' load complete."
}
if { [ module-info mode remove ] } {
puts stderr " '$curMod' unload complete."
}
8
modulemodule command command
Load/unload program module: module add adf/adf2009 module rm adf
List all loaded modules: module list
List all available modules: module avail
Remove all loaded modules module purge
and other usefull commandsMore information at:
http://modules.sourceforge.net/
9
An exampleAn example
10
Parallel executionParallel execution
Modules enables easy support for parallel execution:
#
# check for PBS environment, load appropriate arguments ...
#
if { [info exists ::env(PBS_ENVIRONMENT)] } {
set PBSFILE $env(PBS_NODEFILE)
set NPROC [exec wc -l < $PBSFILE]
setenv NSCM $NPROC
} else {
set NPROC 1
setenv NSCM $NPROC
}
11
MonitoringMonitoring
Software packages are tested on each site supporting
vo.plgrid.plWhy automated tests?
to avoid common mistakes (network drive not mounted, expired license, wrong permissions, etc.)
save time
Each test contains a short, application program specific, input file
Tests are checked frequently by First Line SupportAt any time user can check current status of the testsCurrently SAM tests are implementedA migration from SAM to PL-Grid Nagios is planned for
near future
12
MonitoringMonitoring
13
MonitoringMonitoring
Typical test
14
MonitoringMonitoring
Other tests
15
SummarySummary
We have provided a unified solution for porting and installing software applications in grid environment
The solution does not enforce any major changes in site’s politics' concerning software installation
Solution is convenient for users as they can access their software using just one command
Automated software tests help site administrators keep track of software packages operation
16
Questions?
17