Alexandre Duarte CERN Fifth EELA Tutorial Santiago, 06/09-07/09,2006

Slides:



Advertisements
Similar presentations
FP62004Infrastructures6-SSA E-infrastructure shared between Europe and Latin America Special Jobs Claudio Cherubino INFN Catania.
Advertisements

EGEE is a project funded by the European Union under contract IST EGEE Tutorial Turin, January Hands on Job Services.
Development of test suites for the certification of EGEE-II Grid middleware Task 2: The development of testing procedures focused on special details of.
Riccardo Bruno, INFN.CT Sevilla, 10-14/09/2007 GENIUS Exercises.
E-infrastructure shared between Europe and Latin America 12th EELA Tutorial for Users and System Administrators Architecture of the gLite.
E-science grid facility for Europe and Latin America E2GRIS1 Francisco Prieto (PhD), Maria Boton, Raul Priego – CETA- CIEMAT Itacuruça.
IST E-infrastructure shared between Europe and Latin America Architecture of the gLite WMS Alexandre Duarte CERN Fifth EELA.
E-infrastructure shared between Europe and Latin America Architecture of the WMS Manuel Rubio del Solar CETA-CIEMAT EELA Tutorial, Mérida,
Special Jobs Claudio Cherubino INFN - Catania. 2 MPI jobs on gLite DAG Job Collection Parametric jobs Outline.
EGEE-II INFSO-RI Enabling Grids for E-sciencE International Summer School on Grid Computing 2006 gLite Information System and Workload.
FESR Consorzio COMETA - Progetto PI2S2 Using MPI to run parallel jobs on the Grid Marcello Iacono Manno Consorzio COMETA
FP6−2004−Infrastructures−6-SSA E-infrastructure shared between Europe and Latin America Special Jobs Matias Zabaljauregui UNLP.
FP6−2004−Infrastructures−6-SSA E-infrastructure shared between Europe and Latin America Luciano Díaz ICN-UNAM Based on Domenico.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) WMPROXY API Python & C++ Diego Scardaci
E-science grid facility for Europe and Latin America gLite Job Management. User and Site Admin Tutorial Elisa Ingrà – INFN Catania Dublin.
The gLite API – PART I Giuseppe LA ROCCA INFN Catania ACGRID-II School 2-14 November 2009 Kuala Lumpur - Malaysia.
INFSO-RI Enabling Grids for E-sciencE GILDA Praticals GILDA Tutors INFN Catania ICTP/INFM-Democritos Workshop on Porting Scientific.
Enabling Grids for E-sciencE Workload Management System on gLite middleware Matthieu Reichstadt CNRS/IN2P3 ACGRID School, Hanoi (Vietnam)
Nadia LAJILI User Interface User Interface 4 Février 2002.
INFSO-RI Enabling Grids for E-sciencE Workload Management System Mike Mineter
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks gLite job submission Fokke Dijkstra Donald.
EGEE-II INFSO-RI Enabling Grids for E-sciencE Using gLite API Vladimir Dimitrov IPP-BAS “gLite middleware Application Developers.
INFSO-RI Enabling Grids for E-sciencE The gLite Workload Management System Elisabetta Molinari (INFN-Milan) on behalf of the JRA1.
SEE-GRID-SCI The SEE-GRID-SCI initiative is co-funded by the European Commission under the FP7 Research Infrastructures contract no.
EGEE-III INFSO-RI Enabling Grids for E-sciencE Feb. 06, Introduction to High Performance and Grid Computing Faculty of Sciences,
E-infrastructure shared between Europe and Latin America IST Campina Grande, OurGrid/EELA interoperability meeting
Job Management DIRAC Project. Overview  DIRAC JDL  DIRAC Commands  Tutorial Exercises  What do you have learned? KEK 10/2012DIRAC Tutorial.
INFSO-RI Enabling Grids for E-sciencE Workflow Management in Giuseppe La Rocca INFN – Catania ICTP/INFM-Democritos Workshop on Porting.
INFSO-RI Enabling Grids for E-sciencE Claudio Cherubino, INFN Catania Grid Tutorial for users Merida, April 2006 Special jobs.
High-Performance Computing Lab Overview: Job Submission in EDG & Globus November 2002 Wei Xing.
INFSO-RI Enabling Grids for E-sciencE Job Workflows with gLite Emidio Giorgio INFN NA4 Generic Applications Meeting 10 January 2006.
FP6−2004−Infrastructures−6-SSA E-infrastructure shared between Europe and Latin America Alexandre Duarte CERN IT-GD-OPS UFCG LSD 1st EELA Grid School.
EGEE-II INFSO-RI Enabling Grids for E-sciencE Workload management in gLite 3.x - MPI P. Nenkova, IPP-BAS, Sofia, Bulgaria Some of.
EGEE-II INFSO-RI Enabling Grids for E-sciencE Command Line Grid Programming Spiros Spirou Greek Application Support Team NCSR “Demokritos”
INFSO-RI Enabling Grids for E-sciencE EGEE is a project funded by the European Union under contract IST Job sandboxes.
INFSO-RI Enabling Grids for E-sciencE GILDA Praticals Giuseppe La Rocca INFN – Catania gLite Tutorial at the EGEE User Forum CERN.
E-infrastructure shared between Europe and Latin America FP6−2004−Infrastructures−6-SSA Special Jobs Valeria Ardizzone INFN - Catania.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks WMS tricks & tips – further scripting Giuseppe.
EGEE-II INFSO-RI Enabling Grids for E-sciencE Practical using WMProxy advanced job submission.
User Interface UI TP: UI User Interface installation & configuration.
INFSO-RI Enabling Grids for E-sciencE Flexible Job Submission Using Web Services: The gLite WMProxy Experience Giuseppe Avellino.
LCG2 Tutorial Viet Tran Institute of Informatics Slovakia.
Job Management Beijing, 13-15/11/2013. Overview Beijing, /11/2013 DIRAC Tutorial2  DIRAC JDL  DIRAC Commands  Tutorial Exercises  What do you.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) Advanced Job Riccardo Rotondo
Introduction to Computing Element HsiKai Wang Academia Sinica Grid Computing Center, Taiwan.
FESR Consorzio COMETA - Progetto PI2S2 Using MPI to run parallel jobs on the Grid Marcello Iacono Manno Consorzio Cometa
Introduction to Job Description Language (JDL) Alessandro Costa INAF Catania Corso di Calcolo Parallelo Grid Computing Catania - ITALY September.
Enabling Grids for E-sciencE Work Load Management & Simple Job Submission Practical Shu-Ting Liao APROC, ASGC EGEE Tutorial.
FESR Trinacria Grid Virtual Laboratory Practical using WMProxy advanced job submission Emidio Giorgio INFN Catania.
Practical using C++ WMProxy API advanced job submission
Architecture of the gLite WMS
Workload Management System on gLite middleware
Special jobs with the gLite WMS
gLite Advanced Job Management
The gLite Workload Management System
Corso di Calcolo Parallelo Grid Computing
EGEE tutorial, Job Description Language - more control over your Job Assaf Gottlieb Tel-Aviv University EGEE is a project.
Workload Management System
gLite Job Management Mario Reale GARR
Special Jobs: MPI Alessandro Costa INAF Catania
gLite Advanced Job Management
gLite Job Management Amina KHEDIMI CERIST
Certificates Usage and Simple Job Submission
gLite Job Management Christos Theodosiou
Job Description Language
GENIUS Grid portal Hands on
WMS+LB Server Installation and Configuration
Job Description Language (JDL)
Hands on Session: DAG Job Submission
Job Submission M. Jouvin (LAL-Orsay)
Presentation transcript:

Alexandre Duarte CERN Fifth EELA Tutorial Santiago, 06/09-07/09,2006 Special Jobs Alexandre Duarte CERN Fifth EELA Tutorial Santiago, 06/09-07/09,2006

Outline MPI jobs on gLite DAG Job Collection Parametric jobs 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

MPI Overview Execution of parallel jobs is an essential issue for modern informatics and applications. Most used library for parallel jobs support is MPI (Message Passing Interface) At the state of the art, parallel jobs can run inside single Computing Elements (CE) only; several projects are involved into studies concerning the possibility of executing parallel jobs on Worker Nodes (WNs) belonging to different CEs. 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

Requirements & settings In order to guarantee that MPI job can run, the following requirements MUST BE satisfied: the MPICH software must be installed and placed in the PATH environment variable on each WNs of the CE. Some MPI’s applications require a shared filesystem among the WNs to run. The variable VO_<name_of_VO>_SW_DIR will contain the name of a directory in case of SHARED filesystem. The variable VO_<name_of_VO>_SW_DIR will contain “.” if there is NO SHARED filesystem. 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

From the user’s point of view, jobs to be run as MPI are specified setting the JDL JobType attribute to MPICH and specifying the NodeNumber attribute as well. E.g.: … JobType = “MPICH”; NodeNumber = 4; This attribute defines the required number of CPUs needed for the application 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

When the previous two attributes are included in a JDL, the User Interface (UI) automatically adds the following expression: to the JDL Requirements expression in order to find out the best resource where the job can be executed. (other.GlueCEInfoTotalCPUs >= NodeNumber) && Member (“MPICH”,other.GlueHostApplicationSoftwareRunTimeEnvironment) 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

MPI exercise Create the file “mpi-test.jdl” inside $HOME/gLite/Other and put this contents inside the file: [ Type = "Job"; JobType = "MPICH"; Executable = “cpi"; NodeNumber = 2; StdOutput = “cpi.out"; StdError = “cpi.err"; InputSandbox = {"cpi"}; OutputSandbox = {“cpi.err",“cpi.out"}; RetryCount = 0; Requirements = Other.GlueCEUniqueID=="gildace01.roma3.infn.it:2119/jobmanager-lcgpbs-infinite"; ] 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

MPI submission [santiago05@santiago05 Other]$ glite-job-submit -o id mpi-test.jdl Selected Virtual Organisation name (from proxy certificate extension): gilda Connecting to host santiago01.reuna.cl, port 7772 Logging to host santiago01.reuna.cl, port 9002 ======================= glite-job-submit Success ========================== The job has been successfully submitted to the Network Server. Use glite-job-status command to check job current status. Your job identifier is: - https://santiago01.reuna.cl:9000/dM6PkX3RmEetvzxDcCzVWg The job identifier has been saved in the following file: /home/santiago05/gLite/Other/id ====================================================================== 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

MPI status and output Query the status of the job using the following command: [santiago05@santiago05 Other]$ glite-job-status -i id ……………………………………………. When the status of the job is “DONE”, you can retrieve output with the following command: [santiago05@santiago05 Other]$ glite-job-output -i id …………………………………………… 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

MPI on the web… LCG-2 User Guide Manuals Series https://edms.cern.ch/file/454439/LCG-2-UserGuide.pdf http://oscinfo.osc.edu/training/ http://www.netlib.org/mpi/index.html http://www-unix.mcs.anl.gov/mpi/learning.html http://www.ncsa.uiuc.edu/ 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

Workload Manager Proxy 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

WMProxy overview WMProxy (Workload Manager Proxy) is a new service providing access to the gLite Workload Management System (WMS) functionality through a simple Web Services based interface. has been designed to efficiently handle a large number of requests for job submission and control to the WMS the service interface addresses the Web Services and SOA architecture standards, in particular adhering to WS-I 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

WMProxy : submission & monitoring In order to submit jobs with WMProxy, it’s mandatory to delegate credentials: The submission/monitoring commands are slightly different, but most of the “old” options are supported glite-wms-job-delegate-proxy -d del_ID glite-wms-job-submit -d del_ID collection.jdl glite-wms-job-status jobID glite-wms-job-output jobID 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

DAG job A DAG job is a set of jobs where input, output, or execution of one or more jobs can depend on other jobs Dependencies are represented through Directed Acyclic Graphs, where the nodes are jobs, and the edges identify the dependencies nodeA nodeB nodeC NodeF nodeD 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

JDL structure 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

Attribute: Nodes 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

Attribute: Dependencies 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

DAG jdl [ type = "dag"; max_nodes_running = 4; nodes = [ nodeA = [ file ="nodes/nodeA.jdl" ; ]; nodeB = [ file ="nodes/nodeB.jdl" ; nodeC = [ file ="nodes/nodeC.jdl" ; nodeD = [ file ="nodes/nodeD.jdl"; dependencies = { {nodeA, nodeB}, {nodeA, nodeC}, { {nodeB,nodeC}, nodeD } } ] Node description could also be done here, instead of using separate files 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

Job Collection A job collection is a set of independent jobs that user wants to submit and monitor via a single request Jobs of a collection are submitted as DAG nodes without dependencies JDL is a list of classad, which describes the subjobs [ Type = "collection"; VirtualOrganisation = “gilda"; nodes = { [ <job descr 1 >], [ <job descr 2 >], … }; ] 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

‘Scattered’ Input Sandboxes Input Sandbox can contain file paths on the UI machine (i.e. the usual way) URI pointing to files on a remote gridFTP/HTTPS server InputSandbox = { "gsiftp://neo.datamat.it:2811/var/prg/sim.exe", "https://ghemon.cnaf.infn.it:8443/data/idat_1", "file:///home/pacio/myconf“ }; A base URI to be applied to all sandbox files can also be specified InputSandboxBaseURI = "gsiftp://matrix.datamat.it:2811/var"; Only local files (file://) are uploaded to the WMS node File pointed by URIs are directly downloaded on the WN by the JobWrapper just before the job is started 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

‘Scattered’ Output Sandboxes JDL has been enriched with new attributes for specifying the destinations for the files listed in the OutputSandbox attribute list OutputSandbox = { "jobOutput", "run1/event1", "jobError" }; OutputSandboxDestURI = { "gsiftp://matrix.datamat.it/var/jobOutput", "https://grid003.ct.infn.it:8443/home/cms/event1", "gsiftp://matrix.datamat.it/var/jobError" }; A base URI to be applied to all sandbox files can also be specified OutputSandboxBaseDestURI = "gsiftp://neo.datamat.it/home/run1/"; Files are copied when the job has completed execution by the JobWrapper to the specified destination without transiting on the WMS node 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

Job collection example [ type = "collection"; InputSandbox = {"date.sh"}; RetryCount = 0; nodes = { file ="jobs/job1.jdl" ; ], Executable = "/bin/sh"; Arguments = "date.sh"; Stdoutput = "date.out"; StdError = "date.err"; OutputSandbox ={"date.out", "date.err"}; ] file ="jobs/job3.jdl" ; }; All nodes will share this Input Sandbox 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

Parametric Job A parametric job is a job where one or more of its attributes are parameterized Values of attributes vary according to a parameter Job monitoring / managing is always done through an unique jobID, as if the job was single (see submission of collection [ JobType = "Parametric"; Executable = "/bin/sh"; Arguments = "md5.sh input_PARAM_.txt"; InputSandbox = {"md5.sh", "input_PARAM_.txt"}; StdOutput = "out_PARAM_.txt"; StdError = "err_PARAM_.txt"; Parameters = 4; ParameterStart = 1; ParameterStep = 1; OutputSandbox = {"out_PARAM_.txt", "err_PARAM_.txt"}; ] 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

Parametric job / 2 Parameter can be also a list of string InputSandbox (if present) has to be coherent with parameters [ui-test] /home/giorgio/param > cat param2.jdl [ JobType = "Parametric"; Executable = “/bin/cat"; Arguments = “input_PARAM_.txt”; InputSandbox = "input_PARAM_.txt"; StdOutput = "myoutput_PARAM_.txt"; StdError = "myerror_PARAM_.txt"; Parameters = {earth,moon,mars}; OutputSandbox = {“myoutput_PARAM_.txt”}; ] [ui-test] /home/giorgio/param > ls inputEARTH.txt inputMARS.txt inputMOON.txt param2.jdl 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006

References JDL attributes specification for WM proxy https://edms.cern.ch/document/590869/1 WMProxy quickstart http://egee-jra1-wm.mi.infn.it/egee-jra1-wm/wmproxy_client_quickstart.shtml WMS user guides https://edms.cern.ch/document/572489/1 5th EELA TUTORIAL - USERS - Santiago, 06/09-07/09,2006