CS 5260 (Fall 2024)

 
 

Parallel Computations I

 

[ Courses ] [ syllabus ] [ class policy ] [ references ] [ projects ] [ assignments ]

   

Instructor
Dr. Elise de Doncker
Department of Computer Science
College of Engineering and Applied Sciences
B-240 Parkview Campus
Kalamazoo, MI-49008

Phone: (269) 276-3102 (office), 276-3101 (Dept. office) 276-3122 (fax)
e-mail: elise.dedoncker [at] wmich.edu

Office hours
MW 12:00-13:00, or by appointment

Texts
(best to get the most recent version)

  • Required:
    An Introduction to Parallel Programming.
    Peter S. Pacheco, Morgan Kaufman Elsevier, Inc. (978-0-12-374260-5)
    OR
    An Introduction to Parallel Programming. Peter S. Pacheco and Matthew Malensek, 2022 Elsevier, Inc. (978-0-12-804605)

    CUDA by Example - An Introduction to General-Purpose GPU Programming. Jason Sanders and Edward Kandrot, Addison-Wesley (ISBN: 978-0-13-138768-3)
    OR
    CUDA for Engineers: An Introduction to High-Performance Parallel Computing. Duane Storti and Mete Yurtoglu, 1st Edition, Addison-Wesley (ISBN: 978-0134177410)
  • Recommended:
    Parallel Programming - Techniques and Applications.
    B. Wilkinson and M. Allen, Prentice Hall
    Parallel Programming in C with MPI and OpenMP. Micheal J. Quinn, McGraw-Hill
    Parallel Programming for Multicore and Cluster Systems. Thomas Rauber and Gudula Rünger, Springer 2010 (ISBN: 978-3-642-04817-3)
    Using MPI - Portable Parallel Programming with the Message-Passing Interface. W. Gropp, E. Lusk and A. Skjellum, The MIT Press
  • Introduction to Parallel Computing. A. Grama et al., Benjamin/Cummings Publishing Company

    Course contents and goals
    CS 5260 will cover cutting-edge topics, on multi-core computing and threaded programming, distributed systems, graphics processing units (GPUs) and CUDA. Other topics may include cloud computing with infrastructure as a service and on-demand resource provisioning; "ubiquitous" computing, web based systems and technologies; grid computing; as well as working on the parallel systems in our department and handling classical problems and algorithms. We will get hands-on experience on our thor cluster with 21 nodes, which have shared memory, multi-core processors, and GPUs. We will also use our new cluster with 10 GPU workstations.

    Computer usage
    For program implementations on distributed processors, the class will use the computer cluster in the Department of Computer Science Research lab in room B-217 CEAS, with the MPI (Message Passing Interface) system and GPU access, and the GPU workstation cluster in B-208. For OpenMP (multi-threading), the students can use their C compiler on their laptop.

    Learning outcomes

    [ Courses ] [ syllabus ] [ class policy ] [ references ] [ projects ] [ assignments ]