Development of a Grid Computing Course for Fall 2004 Barry Wilkinson and Mark A. Holliday Department of Mathematics and Computer Science Western Carolina University July 27th, 2004 Grid Computing, B. Wilkinson, 2004
What we have achieved so far. Grid Computing, B. Wilkinson, 2004
Students Two outstanding undergraduate students have been employed at WCU since June 1st, 2004, Jeffrey House (full-time) and Sam Daoud (half-time). Grid Computing, B. Wilkinson, 2004
Student duties Their tasks: Load system software and GT3.2 onto three laboratory computers (not an easy task) - Done Produce documentation - Done for GT 3.2 Develop assignments jointly with the faculty Do directed research on various aspects of grid computing. (Some of this work has not yet shown up in deliverables, for example a difficult web services assignment that we have not yet adopted.) Grid Computing, B. Wilkinson, 2004
Faculty Principal faculty supported by the UNC-OP ASU grant are Barry Wilkinson and Mark Holliday. Jointly, they have: Created a detailed home page for the course Produced over 407 lecture slides Fully tested and produced detailed hand-outs for first three assignments and also produced slides for these assignments Grid Computing, B. Wilkinson, 2004
Course Outline Grid Computing, B. Wilkinson, 2004
Course credit Listed as an undergraduate course but could be taken for graduate credit with our approval (and your institution). Graduate students can expect more demanding work. Grid Computing, B. Wilkinson, 2004
Prerequisites Preferably programming skills in Java on a Linux system. Some later work may also involve C/C++ programming. Grid Computing, B. Wilkinson, 2004
Topics Review of Internet technologies Introduction to grid computing Web services Grid services Security, Public Key Infrastructure Open Grid Services Architecture (OGSA) Globus 3.2 Condor-G MPI and grid-enabled MPI UNC-W GUI and grid computing applications Grid Computing, B. Wilkinson, 2004
Assessment 5 “simple” programming tasks Programming Project web services grid services Globus job Condor job MPI-G2 job Programming Project Class tests (1 or 2) Final test Small print: Subject to change. The instructor reserves the right to change the assignments to make it easier or harder. Grid Computing, B. Wilkinson, 2004
Weeks 1 - 3 Grid computing Virtual organizations, computational grid projects, grid computing networks, TeraGrid, grid projects in the US and around the world, grid challenges Internet Technologies IP addresses, HTTP, URL, HTTP, XML, Telnet, FTP, SSL Web Services I. Service-Oriented Architecture (SOA), service registry, XML documents, XML schema, namespaces, SOAP, XML/SOAP examples, Axis Web Services II. WSDL, portType, message definition, WSDL to/from code Assignment 1 "Simple" Web service Java programming assignment. Tomcat environment, axis, JWS facility Grid Computing, B. Wilkinson, 2004
Weeks 3 - 4 Grid Service Concepts, differences to Web services, stateful/stateless/transient/non-transient, Open Grid Services Architecture (OGSA), OGSI, grid service factory, Web Services Resource Framework (WSRF) Assignment 2 "Simple" grid service Java programming assignment. Globus 3.2 environment.Tools: ant Grid Computing, B. Wilkinson, 2004
Weeks 4 - 6 Security Secure connection, authorization requirements, symmetric and asymmetric (public/private) key cyptography, non-repudiation, digital signatures, certificates, certificate authorities, X509 certificate Globus: Part 1 Basic structure (version 3.2), grid service container, service browser, Globus Resource Allocation Manager (GRAM), job submission with managed-job-globusrun, Grid Security Infrastructure (GSI), Globus certificates, simpleCA, proxies, creating a proxy Globus: Part II Resource management, Master Managed Job Factory Service (MMJFS), more on managed-job-globusrun. Resource Specification Language (RSL and RSL-2), syntax and examples in RSL and RSl-2 Assignment 3 Submitting a Job to the Grid, GT3 mangaged-job-globusrun, job specified in RSL-2 (XML file) Grid Computing, B. Wilkinson, 2004
Weeks 6 - 7 Globus: Part III Information Directory Services, LDAP, resource discovery Schedulers and Condor, submit description file, resource brokers DAGMan, Checkpointing, ClassAd, Condor-G, other systems Assignment 4 Submitting a Condor-G Job Grid Computing, B. Wilkinson, 2004
Weeks 7 - 8 High performance Grand challenge problems, parallel computing (HPF) computing, potential speed-up, types of parallel computers, shared memory multiprocessors, programming, message-passing multicomputers Parallel Programming Techniques suitable for a Grid, embarrassingly parallel computations, Monte Carlo, parameter studies, sample "big" problems, gravitational N-body problem Cluster Computing Basic message passing techniques, History, Beowulf clusters, system software, programming models (MPMD, SPMD), synchronous message passing, asynchronous message passing, message tags, collective routines Grid Computing, B. Wilkinson, 2004
Weeks 8 - 9 MPI Process creation, communicators, unsafe message passing, point-to-point message-passing, blocking, non-blocking, communication modes, collective communication, running an MPI program on a cluster Grid-enabled MPI MPI-G2 internals, mpirun command, RSL script Assignment 5 Running a simple MPI-G2 program Grid Computing, B. Wilkinson, 2004
Weeks 10 to 15 (Not yet developed) Grid portals UNC-W GUI UNC-W applications Scientific, business Guest Speakers Grid Computing, B. Wilkinson, 2004
Project In addition to five “simple” assignments, there may be a programming project or more complex assignments. Details yet to be decided. Grid Computing, B. Wilkinson, 2004
Course Text There is no assigned course textbook Materials and links are provided on the home page. Grid Computing, B. Wilkinson, 2004
Course Home Page http://www.cs.wcu.edu/~abw/CS493F04 for announcements, slides, assignments, reading materials, tests dates, etc. Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Current and Future work Complete work on assignment 4 and subsequent assignments Complete the slides for the course Incorporate work from UNC-W into the course Grid Computing, B. Wilkinson, 2004
Acknowledgements Mountain Area Grid Innovation Collaborative (MAGIC) This course is a team effort of: Mountain Area Grid Innovation Collaborative (MAGIC) Faculty: Barry Wilkinson, Mark Holliday, David Luginbuhl Students (Wizards): Sam Daoud, Jeffrey House, Chris Johnson http://www.cs.wcu.edu/~abw/MAGIC and: University of North Carolina at Wilmington Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Grid Computing, B. Wilkinson, 2004
Acknowledgements Partial support for this work was provided by the National Science Foundation’s Course, Curriculum, and Laboratory Improvement program under grant 0410667 and by University of North Carolina, Office of the President. MAGIC gratefully acknowledges their support. Grid Computing, B. Wilkinson, 2004