+ All Categories
Home > Documents > Integrating Parallel Computing into the Undergraduate Curriculum: Efforts at Texas State University...

Integrating Parallel Computing into the Undergraduate Curriculum: Efforts at Texas State University...

Date post: 14-Dec-2015
Category:
Upload: jarod-hosford
View: 216 times
Download: 0 times
Share this document with a friend
Popular Tags:
18
Integrating Parallel Computing into the Undergraduate Curriculum: Efforts at Texas State University Martin Burtscher Wuxu Peng Apan Qasem Hongchi Shi Dan Tamir Heather Thiry
Transcript

Integrating Parallel Computing into the Undergraduate

Curriculum: Efforts at Texas State University

Martin BurtscherWuxu Peng

Apan QasemHongchi ShiDan Tamir

Heather Thiry

Outline

• Motivation• The Early-and-often approach• Mapping modules to curricula• Assessment• Challenges

TUES14

Need for PDC Topics in the Curriculum

TUES14

more responsibility on software

ubiquitous parallelism

CS undergraduates need exposure to more PDC concepts to effectively exploit

current and future computers

Efforts at Integrating Parallelism

• NSF/IEEE TCPP PDC Curriculum Committee

• NSF CDER center

• ACM 2013 Curriculum Guidelines• New Knowledge Area on PDC• 5 hours in Tier 1 (0 in 2008)• 10 hours in Tier 2

TUES14

The Early and Often Approach

• Breaks away from the traditional approach of teaching parallel programming as an upper-level elective

• Introduce parallelism early in the curriculum in required courses

• Repeat key concepts in different courses throughout the curriculum

• Tie concepts together in an upper-level capstone course

TUES14

upper-level elective

major path

capstone m

ajor path

early introduction

reinforcement

collation

Module Principles

1. modules should be classified and introduced based on level of abstraction• Amdahl’s Law in CS I, cache coherence in senior-level

class

2. modules should provide parallel context to existing content• Data-parallelism when teaching divide-and-conquer• Pipelining when doing producer-consumer

3. modules should be self-contained for easy adoption across different institutions

TUES14

Texas State PDC Modules

• Module includes• Instructional material

• Lecture notes• In-class examples, exercises and solution• Pedagogical notes • Source code

• Evaluation material • Quizzes• Programming assignments • Exam questions

• Length : 1.25-2.5 hours (1-2 lectures) • Course recommendation• Learning outcomes mapped to NSF/TCPP

curriculum

TUES14

http://tues.cs.txstate.edu

Instructional Support

Module Topics

Index AreaA Elementary NotionsB Parallel Algorithms

C Parallel Architecture

D Task Orchestration

E Parallel Performance

TUES14

Attempt to provide coverage on a broad range of topics, not just “programming”

Areas not disjoint

Module Topics

TUES14

Index Area ACM Knowledge AreaA Elementary Notions Parallelism FundamentalsB Parallel Algorithms Parallel Algorithms, Analysis,

and ProgrammingC Parallel Architecture Parallel Architecture

D Task Orchestration Communication and Coordination

E Parallel Performance Parallel Performance

Modules

Index Module

A Parallel Computing Fundamentals

B Parallelization Techniques

C1 Intra-processor parallel architecture

C2 Inter-processor parallel architecture

D1 Scheduling and mapping

D2 Communication and Synchronization

E1 Performance - basic concepts

E2 Performance - analysis and evaluation

E3 Performance - memory, affinity and energy

TUES14

AB ABSoftware Engineering

AB

prerequisite

required course

CS II

CS I

Digital Logic

Computer Ethics

ComputerNetworks

OperatingSystems

Data Structures

Parallel Programming

freshman

senior

TUES14

Assembly Discrete Math

Computer Architecture

Compilers OODI Human Factors

Embedded Systems

sophomore

junior

Texas State CS Curriculum

Data and Task Parallelism

Divide-and-conquerDynamic Programming

B. Parallelization Techniques and

Parallel AlgorithmsCommunicationSynchronization

Scheduling for Power and Performance

Data Dependence

D. Task Orchestration

SMP, ClustersNUMA, UMA

Cache SharingCache Coherence

C. Parallel Architectures

SpeedupEfficiencyScalability

Cache LocalityLoad Balancing

Complexity Analysis

E. PerformanceConcurrency and Parallelism, Decomposition

Power and Performance

A. Elementary Notions

low

high

Level o

f A

bstra

ctio

n

CS II

A,B,E

CS I

A

Data Structures

A,B, E

Computer Architecture

C, E

ComputerNetworks

B,D

OperatingSystems

D,E

Compilers

C,E

Special Topics

B,C,D,E

Parallel Programming

A,B,C,D,E

freshman

senior

Year

TUES14

Assembly

C

A

Mapping Modules to Courses

Module Course

A Parallel Computing Fundamentals CS I

B Parallelization Techniques CS II, Data Structures

C1 Intra-processor parallel architecture Assembly, Architecture

C2 Inter-processor parallel architecture Architecture, Compilers

D2 Scheduling and mapping Operating Systems

E1 Performance - basic concepts CS II, Data Structures, Compilers

TUES14

Assessment

• Learning outcome• assessed through final exam questions and/or class

assignments

• External evaluation• Student engagement, Learning experience, Confidence• Gender, GPA and other classifications

• Longitudinal evaluation • Performance on capstone course as function of number

of modules encountered in previous courses• Keep track of modules encountered by student

TUES14

Learning Outcomes

TUES14

External Evaluation Summary

TUES14

Challenges

• Coverage• Which course is the best fit?• How much time to devote to a module?• When in the semester should the module be introduced?

• Content substitution• What content should be removed or condensed?• How to convince experienced instructors, this is the right

thing?

• Consistency • How to ensure consistent coverage of material across

multiple sections taught by different instructors?

TUES14

Tackling the Challenges

• Coverage• be conservative and opt to introduce module in the

more senior-level class • introduce modules late in the semester

• Content substitution• Remove/condense content that appear ‘outdated’

• VAX

• Reduce coverage of content that is covered in more than one course • number conversion

• Consistency • For now, introducing modules in only a subset of the

sections, helps with longitudinal survey

TUES14


Recommended