7th JLESC Workshop


Charmworks CEO Laxmikant Kale and CTO Phil Miller will be presenting at the 7th JLESC Workshop (July 17–19, 2017) at the NCSA Building in Urbana, Illinois. See the descriptions below to learn more about their presentations.

Tuesday, July 18

Modern C++ for the Charm++ Parallel Programming System – 11 AM
Phil Miller, University of Illinois at Urbana-Champaign
Execution of a Charm++ application is driven by object method invocations on distributed parallel instances of C++ objects. Because of its design, the Charm++ system puts a layer of indirection between callers and callees, to enable asynchronous execution, location-independent delivery, and call-by-value semantics. When naively implemented, this indirection can introduce unnecessary delays, memory allocations, and data copy operations. In this talk, I will describe the baseline implementation, some optimizations that have been made using const-correctness and r-value references, and longer-term plans involving present and future developments such as Ranges and technical specification.

OpenAtom: Ground and Excited States of Electrons from First Principles – 3:50 PM
Laxmikant Kale, University of Illinois at Urbana-Champaign
The goal of the OpenAtom project is to statistically sample complex environments in order to understand important and useful materials systems. We describe our progress towards fast ab initio computations to provide the ground energy surface that describe the systems of interest within Density Functional Theory and excited state properties and spectroscopy within the GW/Bethe-Saltpeter approach.

Click here to learn more about the 7th JLESC Workshop.

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.