Multicore Programming Summer SchoolSummer School on Multicore Programming 2014
The Summer School on Multicore Programming (MPSS) is a chance to gain extensive, hands-on experience in Java multicore development and the Eclipse platform. Summer School runs from the afternoon of Friday, October 17 through the evening of Sunday, October 19. Integrated lecture-labs will form the basis of the coursework. Teaching assistants will be on-hand to help participants during the lab portions. The Summer School is held as a workshop and not run as an academic program; please be aware that no credit is available for the courses taken.
The following schedule is tentative and likely to change as the Summer School approaches. We reserve the right to make course substitutions and timing changes to fit the needs of our instructors and guest speakers. The dates of the school (17-19 October) will remain the same.
Although snacks, tea and coffee will be provided, the participants are responsible for their own meals (breakfast, lunch, dinner) using a wide selection of eating places within the walking distance.
Registration
The program is limited to 50 participants. The early registration deadline has been extended to October 6, 2014 and the fee is $100. Starting on October 7, the late registration fee will be $150.
Online registration is available through the OSU Markeplace.
Location
The workshop will be held on the Portland State University campus. Room 2500 B, 1900 SW 4th Ave, Portland State University
Directions: Use the atrium entrance to the Engineering Building at 1930 SW 4th Avenue. Go down the stairs one level. From the bottom of the stairs, head NW out of the stairwell and along the corridor. Room 086-01 will be on your right.
Changes from Previous Years
Taking into account past feedback and changes in the nature and direction of multicore programming, we will be offering a curriculum more specific to Java and taught in greater depth than in past years.
Because of this, a strong familiarity with the Java language is absolutely required for those attending. We expect that you have at least two years of coding experience with Java. Those who have worked intensively with Java for less time than that may also qualify, but this knowledge is essential for success in the course. If you are inexperienced with Java programming, you will likely not be able to keep up with the pace of the course.
Participants should be prepared to code and work on the material on their own computers as a part of each class. Attendees should come with multicore laptops loaded with the required software, which will include Eclipse IDE, Java, VisualVM profiler tools, an open-source data race detector (several options will be given), and additional concurrency frameworks. A detailed list of the required software will be provided two weeks before the start of class. It is the participant’s responsibility to make sure the software is installed and operational before class begins on October 17th.
Further Information
For more information contact Danny Dig (digd@eecs.oregonstate.edu) or visit: http://eecs.oregonstate.edu/multicore-programming
Fri 17 OctDisplayed time zone: Tijuana, Baja California change
13:00 - 17:00 | Friday AfternoonSummer School on Multicore Programming at FAB 86-01 at Portland State University (PSU) Chair(s): Danny Dig Oregon State University | ||
13:00 30mRegistration | Registration and check-in Summer School on Multicore Programming | ||
13:30 30mTalk | Welcome and class overview Summer School on Multicore Programming | ||
14:00 30mTalk | Multicore Architecture Summer School on Multicore Programming | ||
14:30 60mTalk | Threading Concepts Summer School on Multicore Programming | ||
15:30 60mTalk | Parallel Programming Patterns Summer School on Multicore Programming | ||
16:30 30mTalk | Programming with Eclipse Summer School on Multicore Programming |
Sat 18 OctDisplayed time zone: Tijuana, Baja California change
09:00 - 12:00 | Saturday MorningSummer School on Multicore Programming at FAB 86-01 at Portland State University (PSU) Chair(s): Danny Dig Oregon State University | ||
09:00 3hTalk | Parallelism with Java Threads and ThreadPools Summer School on Multicore Programming |
13:00 - 17:00 | Saturday AfternoonSummer School on Multicore Programming at FAB 86-01 at Portland State University (PSU) Chair(s): Danny Dig Oregon State University | ||
13:00 3hTalk | Correctness, Thread-safety, and Scalability Summer School on Multicore Programming | ||
16:00 60mTalk | Parallelism with with Lightweight Task Framework and Parallel Streams in Java 7/8 Summer School on Multicore Programming |
Sun 19 OctDisplayed time zone: Tijuana, Baja California change
09:00 - 12:00 | Sunday MorningSummer School on Multicore Programming at FAB 86-01 at Portland State University (PSU) Chair(s): Danny Dig Oregon State University | ||
09:00 3hTalk | Thread-safety with Atomics* and Concurrent Collections Summer School on Multicore Programming |
13:00 - 17:00 | Sunday AfternoonSummer School on Multicore Programming at FAB 86-01 at Portland State University (PSU) Chair(s): Danny Dig Oregon State University | ||
13:00 2hTalk | Refactoring for Improving Throughput and Scalability Summer School on Multicore Programming | ||
15:00 2hTalk | Upcoming Concurrency Libraries in Java Summer School on Multicore Programming Doug Lea State University of New York (SUNY) Oswego |
Schedule
Title | |
---|---|
Correctness, Thread-safety, and Scalability Summer School on Multicore Programming | |
Multicore Architecture Summer School on Multicore Programming | |
Parallelism with Java Threads and ThreadPools Summer School on Multicore Programming | |
Parallelism with with Lightweight Task Framework and Parallel Streams in Java 7/8 Summer School on Multicore Programming | |
Parallel Programming Patterns Summer School on Multicore Programming | |
Programming with Eclipse Summer School on Multicore Programming | |
Refactoring for Improving Throughput and Scalability Summer School on Multicore Programming | |
Registration and check-in Summer School on Multicore Programming | |
Threading Concepts Summer School on Multicore Programming | |
Thread-safety with Atomics* and Concurrent Collections Summer School on Multicore Programming | |
Upcoming Concurrency Libraries in Java Summer School on Multicore Programming | |
Welcome and class overview Summer School on Multicore Programming |
Registration
Online registration is available through: OSU Markeplace.
A strong familiarity with the Java language is absolutely required for those attending. We expect that you have at least two years of coding experience with Java. Those who have worked intensively with Java for less time than that may also qualify, but this knowledge is essential for success in the course. If you are inexperienced with Java programming, you will likely not be able to keep up with the pace of the course.
Participants should be prepared to code and work on the material on their own computers as a part of each class. Attendees should come with multicore laptops loaded with the required software, which will include Eclipse IDE, Java, VisualVM profiler tools, an open-source data race detector (several options will be given), and additional concurrency frameworks. A detailed list of the required software will be provided two weeks before the start of class. It is the participant’s responsibility to make sure the software is installed and operational before class begins on October 17th.
The program is limited to 50 participants. The early registration deadline has been extended to October 6, 2014 and the fee is $100. Starting on October 7, the late registration fee is $150.
FAQ
Q: I am a very competent C# (or C++) programmer, but I have not programmed in Java recently. Should I still attend the course?
A: Although it would help to be familiar with Java syntax, a very skilled OO programmer should be able to pick up Java syntax quite easily. The concepts and frameworks in the course should be still very helpful for C#/C++ programmers, as the parallel concepts and frameworks are very similar to the ones in Java.
Testimonials
“The multicore training for Boeing during the week of Sep. 26th was a success! We were pleased with the well designed course lectures, hands-on programming assignments, and overall delivery of this training. We are most impressed with Professor Dig’s knowledge and enthusiasm in concurrency and parallelism, refactoring, and well-paced delivery of the training to Boeing engineers. We received positive feedback from the attendees about the training through course evaluations and a class retrospective.”
— Homa Ziai-Cook, Associate Technical Fellow at Boeing, organizer of the Boeing course
“Excellent course: relevant, well done, timely. Well worth the time and effort. I would recommend this course to all our developers.”
— Boeing software engineer
“The class was well organized in relation to the content and how it was related to us. The programming exercises kept it from being a dry boring knowledge transfer.”
— Boeing software engineer
Faculty
We will be having lectures from some of the top names in the parallel programming field. More speakers will be revealed closer to the start date of the school. However, we are pleased to announce the following:
Dr. Danny Dig (Oregon State University)
In 2007, Professor Dig earned his Ph.D. in computer science at the University of Illinois. After a postdoctoral appointment at MIT CSAIL, he led research on refactorings that retrofit parallelism. His mission is to make parallel programming synonymous with programming.
Danny will be teaching a series of classes using a curriculum that he has refined and tested both in prior summer schools and in industry courses. The courses have received very high reviews from participants, and we’re confident Danny’s courses will be useful to those wanting to apply parallel programming techniques to Java code.
Dr. Tim Matsson (Intel Corporation)
Co-author of the most influential book on parallel patterns
Tim Mattson earned a Ph.D. for his work on quantum molecular scattering theory (UCSC, 1985). This was followed by a post-doc at Caltech where he worked on the Caltech/JPL hypercubes. Since then, he has held a number of commercial and academic positions with high performance computers as the common thread. Application areas have included mathematics libraries, exploration geophysics, computational chemistry, molecular biology, and bioinformatics.
Dr. Mattson joined Intel in 1993. Among his many roles at Intel, he was applications manager for the ASCI teraFLOPS project, helped create OpenMP, founded the Open Cluster Group (with its cluster package, OSCAR), and launched Intel’s programs in computing for the Life Sciences.
Currently, Dr. Mattson is conducting research on abstractions that bridge across parallel system design, parallel programming environments, and application software. This work builds on his recent book, “Patterns in Parallel Programming,” written with Professors Beverly Sanders and Berna Massingill and published by Addison Wesley. The patterns provide the “human angle” and help keep his research focused on technologies that help general programmers solve real problems.
Tim will be teaching a module on parallel patterns.
Dr. Doug Lea (State University of New York at Oswego)
Lead architect of Java concurrency libraries
Doug Lea is a professor of computer science at the State University of New York at Oswego. He is an author of books, articles, reports, and standardization efforts on object oriented software development including those on specification, design and implementation techniques, distributed, concurrent, and parallel object systems, and software reusability (i.e., “Java Concurrency in Practice” and “Concurrent Programming in Java”); and has served as chair, organizer, or program committee member for many conferences and workshops in these areas. He is the primary author of several widely used software packages and components.
Doug will cover “advanced” components in Java 7 and 8.