(baden+160@eng.ucsd.edu)
(cs160x1@ieng6.ucsd.edu)
(cs160x2@ieng6.ucsd.edu)
(cs160x3@ieng6.ucsd.edu)
We will be using Piazza in CSE 160. Use this URL to sign up for this class.
Once signed up, you may access Piazza using this class link
We will be using Moodle for the reading quizzes and to distribute grades. (We will not use GradeSource). Access our Moodle page via this URL.
The course has 2 required textbooks. Please see these instructions for how to obtain your texts, which are not available at the book store.
I have also put the following text on reserve int he library:
Computer Organization and Design: The Hardware/Software Interface, by Patterson & Hennessy, Morgan Kaufmann, 3rd Edition
Buy an iClicker clicker at the bookstore (it is required for the course). Register your iClicker at https://www1.iclicker.com/register-clicker
so you can collect your clicker points for your grade. Use your UCSD ID (PID starts with A) when registering. You must have registered your iClicker by Saturday noon (April 11, 2015). Failure to do so by this date will result your receiving 0 credit for participation for the entire quarter.
Nearly all of us have a parallel computer at our fingertips, yet most of us use the parallel processors only indirectly, through software written by others. In CSE 160 you will learn the skills needed to author your own multithreaded software to realize high performance on multicore processors, which are the latest trend in processor design.
The course will provide an overview of important topics and issues for parallel architectures, models, algorithms and software. CSE 160 will teach you how to design and implement parallel algorithms, understand performance tradeoffs, and to generalize these skills to new problems. We’ll consider applications–both ordinary and extraordinary–and develop a systematic approach for building effective parallel variants.
Fundamentals: execution, programming and memory models, architecture, performance, applications
Software and programming: multithreading- OpenMP and C++11 threads; SIMD; correctness
Parallel algorithm design and implementation: case studies of applications; data structures; performance tradeoffs; performance programming; memory hierarchy optimizations
CSE 160 provides a foundation for pursuing more advanced topics in parallel computation, and conducting research in this exciting field.
Our primary testbed will be the Bang cluster at located at UCSD, which is funded by the National Science Foundation’s Major Research Instrumentation program.
The prerequisite for CSE 160 is CSE 100.