Department of Mathematics and Computer Science


The grid virtualizes heterogeneous geographically disperse resources. From "Introduction to Grid Computing with Globus," IBM Redbooks
Grid Computing
Fall 2004

Dr. Barry Wilkinson
Western Carolina University
Dr. Clayton Ferner
University of North Carolina at Wilmington

Figure due to Rajkumar Buyya, University of Melbourne


This course originates at Western Carolina University and is broadcast on NC Research and Education Network (NCREN) to universities and colleges across the state.  It is currently received at NC State University, University of North Carolina at Wilmington, University of North Carolina at Asheville, University of North Carolina at Greensboro, NC Central University, Appalachian State University, and Elon University. Some lectures are given from University of North Carolina at Wilmington. The course is being developed with partial support from the National Science Foundation and the University of North Carolina Office of the President. The course development team at Western Carolina University includes Dr. Mark Holliday, and undergraduate students Jeffrey House and James Ruff.


Lecture materials Assignments Computing Environment

Lecture slides (Powerpoint format)
Slides Topics
outline Course outline, prerequisites, course text,  course contents, assessment, instructor details.
slides1 Grid computing, virtual organizations, computational grid projects, grid computing networks, TeraGrid, grid projects in the US and around the world, grid challenges
slides2 Basic Internet technologies (review) , IP addresses, HTTP, URL, HTTP, XML, Telnet, FTP, SSL.
slides3a Web Services I.  Service-Oriented Architecture (SOA), service registry, XML documents, XML schema, namespaces,  SOAP, XML/SOAP examples, Axis
slides3b Web Services II. WSDL, portType, message definition, WSDL to/from code
slidesA1 Assignment 1 "Simple" Web service Java programming assignment. Tomcat environment,  axis, JWS facility, 
slides4 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)
slides5 Security, secure connection, authorization requirements, symmetric and asymmetric (public/private) key cyptography, non-repudiation, digital signatures, certificates, certificate authorities, X509 certificate
slides5a Security continued, double encryption, Public Key Infrastructure (PKI), more on Certificate Authorities, requesting a certificate, using a certificate, Certificate Authority for grid computing, GSI authentication/authorization
slidesA2 Assignment 2: "Simple" grid service Java programming assignment. Globus 3.2 environment.Tools: ant
Slides Taped presentation "The Grid: Beyond the Hype," by Ian Foster, Argonne National Laboratory and University of Chicago, originally given at Duke University, Sept. 14th, 2004
slides6a Globus: - Basic structure, Resource management, Globus Resource Allocation Manager (GRAM), grid service container, service browser, Resource Specification Language (RSL and RSL-2), syntax and examples in RSL and RSl-2, Master Managed Job Factory Service (MMJFS), managed-job-globusrun
slidesA3 Assignment 3: Submitting a GT 3 Job, GT3 mangaged-job-globusrun, job specified in RSL-2 (XML file)
slides6c Globus: - Information services, resource discovery, LDAP, centralized system, GT3 information services (MDS), GRIS, GIIS, grid service discovery, service data. 
slides6d Schedulers and resource brokers, Condor, types of jobs, DAGMan, ClassAd, job submission, Condor-G.
    Review for WebCT quiz 1
    Assignment 4: Submitting a Condor-G Job
slides7a High performance computing, grand challenge problems, parallel computing, potential speed-up, types of parallel computers, shared memory multiprocessors, programming, message-passing multicomputers, basic message passing techniques, history, Beowulf clusters, system software, programming models (MPMD, SPMD), synchronous message passing, asynchronous message passing, message tags, collective routines (broadcast, scatter, gather, reduce)
slides9 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
slides10 Grid-enabled MPI, MPI-G2 internals, mpirun command, RSL script, Parallel programming, techniques suitable for a Grid, embarrassingly parallel computations, Monte Carlo, parameter studies
    Assignment 6 Running a simple MPI-G2 program
GridNexus UNCW GUI for Workflow Management (www.gridnexus.org). Presented by Clayton Ferner
jxpl-intro Implementation of GridNexus, JXPL. Presented by Jeff Brown
    Assignment 5: UNCC-W workflow assignment
Grid portals, purpose, application-based portals, historical examples, GPDK, Gridport, Hotpage, NCSA Alliance portal, DOE Fusion Grid portal, etc., portal implementation, portlets, JSR 168, OGCE portal
    Revisiting earlier topics and review. Review for WebCT quiz 2. Discussion on assignments.
    Current state-of-the-art, applications, ... to be covered by expert guest speakers:
slides Guest speaker, Wolfgang Gentzsch, Mangaing Director, MCNC Grid Computing and Networking Services.  Title of presentation "Grid Computing in the Industry"
Presentation by Sammie Carter, NCSU, "Wolfgrid: the ncsu community supercomputer and Datamation Sort using OpenMP and MPI."
    Guest speaker: Professor Daniel A. Reed, Chancellor's Eminent Professor, Director of Institute for Renaissance Computing, University of North Carolina at Chapel Hill, Duke University, and  NC State University. 
slides Guest speaker: Chuck Kesler, Director, Grid Deployment and Data Center Services, MCNC.  Tentative title of presentation: "Security Policy, Legal, and Regulatory Challenges in Grid Computing
    Last class for all sites. (WCU will meet for one extra week.)

Course text

A specific textbook is not assigned for the course.  A lot of materials can be found on-line.

Reading/on-line materials

Assignment Topic
Assignment 1 Web service
Assignment 2 Grid service
Assignment 3
Submitting Job to Grid
Assignment 4 Submitting a Condor-G Job
Assignment 5 UNC-W workflow assignment
Assignment 6
MPI program on the grid


Computing Environment

Software required for course