The tutorial will present Charm++, which is a portable parallel programming system designed with programmer productivity as a major goal. Attendees will become familiar with the asynchronous, object-based programming model of Charm++ and the capabilities its adaptive runtime system offers.
Developed by the Parallel Programming Laboratory over the last 20 years, Charm++ is a portable, mature environment that provides the foundation for several highly scalable and widely used applications in science and engineering, including NAMD, ChaNGa, and OpenAtom. Charm++ runs the same application code on multicore desktops with shared memory, clusters of all sizes, and IBM and Cray supercomputers (such as the upcoming NSF-sponsored Blue Waters), and efficiently supports GPU accelerators where available.
The following week, the Parallel Programming Lab will host its 10th Annual Workshop on Charm++ and its Applications May 7-9 at the Siebel Center, bringing together the Charm++ community and showcasing leading-edge developments in parallel computing.
The target audience for this tutorial is programmers and researchers with any sort of parallel programming experience and basic knowledge of C or C++.
At the HPC Challenge award session during SC'11, PPL members were presented with the first place award for their submission to the 2011 HPC Challenge Class 2 (programming environment) in the performance category. This represents PPL's first submission to the contest.
The class 2 competition tries to identify promising high-level parallel programming systems that offer high performance coupled with developer productivity. The class 2 award was partitioned into "performance" and "elegance" categories, both with separate winners. The PPL submission for performance used Charm++. The goal of the competition is to focus the HPC community's attention on developing a broad set of HPC hardware and HPC software capabilities that are necessary to productively use HPC systems.
Scaling to 100 Million Atoms video.
Prof. Laxmikant (Sanjay) Kale was elevated to IEEE Fellow by the IEEE Board of Directors at its November 2010 meeting. The elevation, effective 1 January 2011, is "for development of parallel programming techniques."
Kale is a professor of Computer Science at the University of Illinois at Urbana-Champaign and the director of the Parallel Programming Laboratory (PPL). One of the signature products of PPL is a parallel programming system called Charm++. More information about Prof. Kale, PPL, and Charm++ can be found on the PPL website.
For 2010-2011, Prof. Kale has several paid positions available for undergraduate students. The skill sets vary for these positions and can include experience in C/C++/Java programming, or programming in PHP, Javascript and SQL. Parallel/high-performance computing experience is not necessary. Desirable applicants should have these characteristics:
- Good programming skills
- Ability to work in teams on software projects
- Experience or interest in developing software independently, outside of class
- A strong academic background in computer science or a closely related field
No prior parallel programming experience is required and undergraduates of all levels will be considered. Interested students should email a resume and cover letter to JoAnne Geigner (jgeigner@illinois.edu) and put "2010-2011 PPL Undergraduate Position" in the subject line.
In the Parallel Programming Laboratory, undergraduates, graduates, and post-docs work with Prof. Laxmikant V. Kale to develop and optimize parallel programming software and novel languages for the fastest computers in the world. Prof. Kale also leads research in high-performance scientific applications in bioinformatics, molecular dynamics, and rocket science. The Parallel Programming Laboratory continuously pushes the limits of parallel application performance, and the lab has made numerous significant contributions to the fundamental knowledge of parallel computing.
For Summer 2010, Prof. Kale has a few paid positions available for undergraduate students interested in parallel, high-performance, or scientific computing research. Undergraduates in the Parallel Programming Lab have a history of winning prestigious awards such as the CRA Award, presenting papers at top conferences, and pursuing graduate studies at top research universities. Desirable characteristics include:
- Interest in parallel, scientific, or high-performance computing
- Ability to work in teams on software projects
- Experience or interest in developing software independently outside of class
- A strong academic background in computer science or a closely related field
No prior parallel programming experience is required, and undergraduates of all levels will be considered. The position is immediately available, especially for students who can be on campus during Summer 2010. Interested students should email a resume to Prof. Laxmikant V. Kale (kale@illinois.edu) and put "PPL Undergraduate Position" in the subject line.
The Computing Research Association recently announced their CRA Outstanding Undergraduate Researcher awards for 2010. PPL undergraduate, Edgar Solomonik was picked as a finalist for the honor. Solomonik, a senior in his 2nd year of study, started working with Prof. Kale's Parallel Programming Lab (PPL) in October of 2008 within his first month of attending college. His current research includes improving a highly scalable parallel sorting algorithm and developing a new benchmark for molecular dynamics. This cross-discipline work is important to Charm++, PPL's parallel programming system, NAMD, the highly scalable biomolecular simulation code, and a computational astronomy code called ChaNGa. Edgar received the CS department Best Undergraduate Research Project Award for the 2008-2009 academic year and his research paper titled, "Highly Scalable Parallel Sorting," was accepted for the 2010 IPDPS (IEE International Parallel and Distributed Processing Symposium).
"Edgar is an exceptional student," Sanjay Kale, the head of PPL, stated. "It is one thing to finish his BS in two years, but to do the level of publishable research along with that is truly remarkable. He is a valuable member of my research group. I think he is a budding star."
The Computing Research Association presents the CRA Outstanding Undergraduate Researcher award yearly and this year it is sponsored by Mitsubishi Electric Research Labs. Microsoft Research and Mitsubishi Electric Research Labs are sponsors in alternate years. This represents the second time a PPL undergraduate earned this award. Ekaterina Gonina was awarded an Honorable Mention in 2008.
While attending SC'09 in Portland, OR, PPL member and Ph.D. student Abhinav Bhatele learned he was one of two recipients of the George Michael Memorial High Performance Computing Fellows for 2009.
Bhatele, a 5th year graduate student in the computer science program, was chosen for the George Michael Memorial award based on his research excellence, academic progress, and other criteria that shows his potential to enhance high performance computing. The award provides a monetary stipend for educational expenses and travel expenses for Bhatele to attend SC'10 in New Orleans to provide a status of his research.
Bhatele's doctoral research is on automating the mapping and load balancing of parallel applications considering the interconnect topology of parallel machines. The goal is to minimize network contention by co-locating communicating tasks or objects on nearby physical processors. This work is especially important on 3D mesh interconnects such as IBM Blue Gene and Cray XT machines. This research is independent of the parallel programming model and hence useful for MPI, Charm++ and other applications.
The George Michael Memorial High Performance Computing Fellow award was established by the Association for Computing Machinery (ACM), the IEEE Computer Society, and SC Conference series. It is awarded annually and provides a stipend for up to three fellowship recipients for one academic year, plus travel support to attend the next year's SC conference.
"The George Michael HPC Fellowship Program is designed to directly address this recommendation by honoring exceptional Ph.D. students throughout the world with the focus areas of high performance computing, networking, storage, and analysis," wrote William Kramer (pictured above with Abhinav Bhatele and other 2009 recipient), Deputy Director of the Blue Waters Project at the National Center for Supercomputing Applications at the University of Illinois.









