Charm++ Tutorial at HPCCamp 2017 – ECAR 2017

ecar2017_logoTechniques and methodology for parallel programming
Module 4: Programming with parallel objects

Rescheduled and is now Sep 18-29, 2017, Buenos Aires, Argentina

Detailed Program:

Day 1: Parallel Objects Programming Fundamentals Introduction to basic concepts: overdecomposition, asynchrony, migratability and adaptivity. The parallel objects model and its advantages over traditional methods. Introduction to Charm++ programming language. Charm++ programming and execution model. Installation of Charm++ and associated libraries. Basic Charm++ code samples. Use and properties of chare arrays.

Day 2: Performance Analysis and Load Balancing Introduction to Projections, a performance analysis tool. Visualizing executions and analysis of experimental results. Performance bottleneck detection. Introduction to load balancing. Object migration and PUP methods. Load balancing strategies in Charm++. Use of different load balancing strategies for particular problems.

Day 3: Advanced Programming with Charm++ Advanced programming mechanisms in Charm++. Multidimensional array usage and chare groups. Introduction to checkpointing and its applications.

Day 4: High Level Programming with Charm++ Introduction to Structured Dagger (SDAG), a tool for high-level programming in Charm++. Survey of other high-level languages in the Charm++ ecosystem. Presentation of real applications using Charm++.


Charmworks sponsors 15th Annual Charm++ Workshop

ppl-logoThe Parallel Programming Laboratory is holding its 15th annual Charm++ workshop on April 17th and 18th, with a half-day tutorial on April 19th. The workshop is broadly focused on adaptivity in highly scalable parallel computing. It also takes stock of recent results in adaptive runtime techniques in Charm++ and the collaborative interdisciplinary research projects developed using it.

A live webcast will be available for remote viewers. The slides for the talks will be posted to the workshop website shortly after the talks conclude. The recorded talks will be available on the PPL YouTube channel.

Charmworks awarded DOE SBIR funding for Adaptive MPI support

sbirCharmworks, Inc. was awarded funding as a part of the Department of Energy’s Small Business Innovation Research program in order to further research and commercial support for Adaptive MPI. Adaptive MPI (AMPI) is an implementation of the MPI standard on top of Charm++ and its dynamic runtime system. It allows pre-existing MPI applications to benefit from the virtualization, fault tolerance, and load balancing support of Charm++ without rewriting the application. Charmworks is now looking for commercial partners that could benefit from AMPI’s use in their applications.

To read more about AMPI, see the manual.

Charmworks exhibiting at SuperComputing 2016

sc16Charmworks has an exhibition booth at the SuperComputing 2016 conference in Salt Lake City this week. Stop by booth #4354 to learn about Charm++’s programming model, to see a live fault tolerance demo, and to hear about commercial support for Charm++. Charmworks will co-host a Birds-of-a-Feather session titled “Charm++ and AMPI: Adaptive and Asynchronous Parallel Programming” on Wednesday, Nov 16th from 12:15 to 1:15 in room 250-E. There are a number of Charm++-related talks throughout the week, which you can read more about at