Cluster and Grid Computing
     CSCE 490/590
     Fall 2004

     http://csce.uark.edu/~aapon/courses/gridcomputing/
While the Internet offers access to many data resources, grid computing enables the collaborative solution of problems by providing access to data resources, computers, applications, scientific instruments, and other research tools that are connected on the Internet at different sites. Grid computing enables collaboration and access to resources for science, technology, engineering, and business.

In this course we will study the underlying communication, application, security, and management technologies that make Grid computing possible. We will also write computational programs for grid computing and learn how to use the most current grid computing tools. In many cases, the computers at a site are grouped together into clusters and have different owners. We will test our programs on a computing grid set up for the course consisting of clusters at various sites. Students should have had a background including Data Structures and Operating Systems. Programming examples will be given in the Java and C programming languages.

This course has been developed in part through support by the National Science Foundation under grants NSF DUE #0410966 to the University of Arkansas and NSF DUE #0411237 to Lewis and Clark College. and in collaboration with Lewis and Clark College and the University of North Carolina at Charlotte. Similar courses supported by the National Science Foundation are also taught at the University of Buffalo.

Publications that have resulted from the materials in this course include:

A. Apon, J. Mache, Y. Yara, and K. Landrus, "Classroom Exercises for Grid Services," Proceedings of the Linux Cluster Institute International Conference on High Performance Computing, Austin, Texas, May, 2004, 12 pages. Available here

J. Mache and A. Apon, "Grid Computing in the Undergraduate Classroom: Topics, Exercises and Experiences," Second International Workshop on Collaborative and Learning Applications of Grid Technology and Grid Education, Cardiff, UK, May 2005. Available here.

         Schedule and Assignments          Grid Computing Info Centre

Text and Readings: There is no required text for the course. Course readings will come from on-line materials. Assigned readings will be posted to the assignments web page.
Professor: Amy W. Apon
Phone: 575-6794 (Dept: 575-6197)
Office Hours: TBD
Time/Place: 8:00-9:20, TTh, ENGR 307
Grading: The grade in the course will be based on quizzes, assigned homework, and a semester project. Students taking the course for graduate credit will additionally be required to present one or two formal presentations to the class.
  • Quizzes: Ten quizzes will be given during the course of the semester. There will be no makeups on quizzes, but you will be allowed to drop your lowest two scores. The quizzes will cover objective material from the lecture material and outside reading material as assigned.
  • Homework and applied exercises: Approximately five homework and applied exercises will be assigned during the semester. A list of assigned homework problems will be maintained on-line. Some exercises will utilize grid tools for problem solving and collaboration and some will be programming exercises. Homework is to be done on your own, without help from others in the class. You may use the assigned articles to help you, but it is considered cheating to acquire information about homework solutions from web sites. Homework and programming assignments are due at the start of class on the due date. Late homework is subject to a grading penalty. An assignment will not be accepted after graded papers are returned.
  • Course project: Each student will complete an applied course project that is either a programming project or extensively illustrates or extends a grid tool. Topics for the project will come from the material in the course and will be discussed as early in the semester as possible.
  • Presentations: Each graduate student will be required to prepare one or two formal class presentations using PowerPoint or other appropriate presentation tool. The length and number of presentations will depend in part on the number of students enrolled in the course. The topics and dates for the presentations will be selected from a set of grid topics during a scheduling class period and will be distributed throughout the semester. Specific grading criteria for the presentations will be provided.
Graduate students will be expected to perform at a higher level than undergraduate students. Grades are assigned on a competitive basis. In general the best answer by an individual student on on an individual homework or quiz items will receive full credit for that item, and other answers will receive lower scores on that item. Grades for undergraduate and graduate students will be calculated using the following distribution:
  • CSCE 490 Undergraduate Students: quizzes (40%), homework and programs (35%), semester project (25%)
  • CSCE 590 Graduate Students: quizzes (40%), homeworks and progams (25%), semester project (25%), presentations (10%)
Topics: Topics to be covered in the course may include, and are not limited to:
  • Overview of grid computing: virtual organizations, computational grid projects around the world, the Teragrid, grid challenges, grid organizations, service oriented architectures
  • Basic Internet technologies: IP, HTTP, UDP, TCP
  • Security: authentication, authorization, inter-institutional authorization, LDAP, authorization requirements, symmetric and asymmetric (public/private) key cyptography, non-repudiation, RSA algorithm, digital signatures, certificates, certificate authorities, X509 certificate, Grid Security Infrastructure (GSI), Globus certificates, simpleCA, proxies, creating a proxy with grid-proxy-init, attribute-based authorization, Shibboleth
  • Web Services and Enabling technologies: XML, SOAP, Apache, Tomcat, Axis, WSDL
  • Grid service concepts: stateful, stateless, transient, non-transient, Grid Services Architecture, OGSA, OGSI, factories, Web Services Resource Framework (WSRF), Globus Toolkit, grid service container, service browser
  • Resource Management: Globus Resource Allocation Manager (GRAM), job submission with managed-job-globusrun, Resource management, Resource Specification Language (RSL and RSL-2), syntax and examples in RSL and RSl-2, schedulers and resource brokers, Condor, Condor-G, other systems
  • Discovery and Information Services: Information directory services, centralized system, GT3 information services (MDS), GRIS, GIIS, UDDI
  • Parallel programming techniques suitable for a Grid: embarrassingly parallel computations, Monte Carlo, parameter studies, sample "big" problems
  • Cluster computing and 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), running a simple MPI program on the grid

Safety and Computer Use: All use of computer equipment at the University of Arkansas falls under the acceptable computer use guidelines of the University. Any violations of these guidelines will result in dismissal from the course with a failing grade, and possible punitive or legal action!
Inclement Weather Policy: If Fayetteville Public Schools are in session then we will have class. If Fayetteville Public Schools are not in session due to inclement weather then we will not have class. If class is cancelled then, if it is urgent, I will send you email regarding any assignment or schedule changes. If class is cancelled on the day that an assignment is due then it will be due during the next class period.
Course Credit: You should enroll in CSCE 490/590 for 3 credit hours.


Last modified: Wed Mar 01 12:39:09 Central Standard Time 2006