In this video from the recent Argonne Training Program on Extreme-Scale Computing, Brad Chamberlain from Cray presents: Chapel: Productive, Multiresolution Parallel Programming.
“We believe Chapel can greatly improve productivity for current and emerging HPC architectures and meet emerging mainstream needs for parallelism and locality.”
Chapel is an emerging programming language designed for productive parallel computing at scale. Chapel’s design and implementation have been undertaken with portability in mind, permitting Chapel to run on multicore desktops and laptops, commodity clusters, and the cloud, in addition to the high-end supercomputers for which it was designed. Chapel’s design and development are being led by Cray Inc. in collaboration with academia, computing centers, and industry.
Summary
Higher-level programming models can help insulate algorithms from parallel implementation details
- Yet, without necessarily abdicating control
- Chapel does this via its multiresolution design
- Here, we saw it principally in domain maps
- Leader-follower iterators and locale models are other examples
- These avoid locking crucial policy decisions into the language
- Here, we saw it principally in domain maps
Download the Slides (PDF) * Download the insideBIGDATA Guide to Scientific Research