Presentation is loading. Please wait.

Presentation is loading. Please wait.

Early Adopter: Integration of Parallel Topics into the Undergraduate CS Curriculum at Calvin College Joel C. Adams Chair, Department of Computer Science.

Similar presentations


Presentation on theme: "Early Adopter: Integration of Parallel Topics into the Undergraduate CS Curriculum at Calvin College Joel C. Adams Chair, Department of Computer Science."— Presentation transcript:

1 Early Adopter: Integration of Parallel Topics into the Undergraduate CS Curriculum at Calvin College Joel C. Adams Chair, Department of Computer Science Calvin College EduPar-11

2 Calvin College Is a 4-year comprehensive liberal arts college located in Grand Rapids, MI Has about 4,000 students Offers ABET-accredited programs in: –Computer Science (BCS) o 7.5 FTE faculty o ~100 students –Engineering (BSE) 2EduPar-11

3 CS Major Curriculum 3EduPar-11 YearFall SemesterSpring Semester 1 Intro to Computing Calculus I Data Structures Calculus II 2 Algorithms & DS Intro. Comp. Arch. Discrete Math I Programming Lang. Discrete Math II 3 Software Engr Adv. Elective OS & Networking Statistics 4 Adv. Elective Sr. Practicum I Adv. Elective Sr. Practicum II Perspectives on Comp. Data Structures Calculus II Programming Lang. Discrete Math II OS & Networking Statistics Algorithms & DS Intro. Comp. Arch. Discrete Math I Adv. Elective: HPC Sr. Practicum I

4 CS 112: Intro to Data Structures Year 1, semester 2, core, 40 students Topics: –Single threading vs. multithreading –Parallelizing: linear search, mergesort –Race conditions: non-thread-safe structures –Speedup, asymptotic performance analysis –Hands on: Embarrassingly parallel matrix operations (addition, transpose) via OpenMP –Reduced: Coverage of graphs 4EduPar-11

5 CS 212: D. Structures & Algorithms Year 2, semester 1, core, 12-15 students Topics: –Parallel vs distributed algorithms –Parallel design (data vs task decomposition) –Parallel algorithms (parallel sorting, max) –Distributed graph algorithms –Asymptotic performance analysis –Reduced: Coverage / review of elementary data structures (stacks, queues, sets) 5EduPar-11

6 Engr 220: Intro. Architecture Year 2, semester 1, core, 12-15 students Topics: –Flynn taxonomy (SISD, SIMD, MIMD) –Multiprocessors (shared vs distributed mem.) –Multicore, manycore processor architectures –Memory hierarchy o Multicore memory bandwidth issues o Multicore caching, coherency issues –Reduced: Assembly language coverage 6EduPar-11

7 CS 214: Programming Languages Year 2, semester 2, core, 20 students Topics: –Concurrency and synchronization: using o Processes / threads / tasks o Semaphores, locks, condition variables, monitors o Race conditions –Communication constructs: o Message passing vs. shared memory –Hands on: Threads in C++, Ruby; Ada tasks –Reduced: coverage of markup languages 7EduPar-11

8 CS 232: OS & Networking Year 3, semester 2, core, 15 students Topics: –Concurrency & synchronization: implementing o Processes, threads, … o Semaphores, locks, condition variables, monitors o Race conditions, deadlocks –Traditional vs. multicore scheduling –TCP/IP and Ethernet Networking: o Sockets, message passing, RPC, … –Classic distributed systems problems 8EduPar-11

9 CS 232: OS & Networking (ii) –Hands on: o Multiprocessing (fork), synchronization o Multithreading (POSIX), synchronization o Kernel programming o Socket programming (client-server systems) –Reduced: coverage of o Hardware review (from 1 week to 1 lecture) o Batch systems o I/O devices 9EduPar-11

10 CS 374: High Perf. Computing Year 3 | 4, semester 1, elective, 8 students Topics: –Multiprocessor architectures –Problem decomposition: data vs task –Parallel patterns & models –Problem types: Monte Carlo, N-body, etc. –Scalability: o Speedup, Efficiency, Amdahl’s L., Gustafson’s L. –Hands on: MPI, OpenMP, MapReduce, OpenCL 10EduPar-11

11 Summary By “sprinkling” parallel topics throughout the core courses, students: –Are exposed to parallel thinking early (year 1) –Are exposed to parallel thinking frequently –Are gradually exposed to increasingly difficult aspects of parallelism This provides a framework for gradually increasing the parallel content as faculty become comfortable teaching it. 11EduPar-11


Download ppt "Early Adopter: Integration of Parallel Topics into the Undergraduate CS Curriculum at Calvin College Joel C. Adams Chair, Department of Computer Science."

Similar presentations


Ads by Google