Augmenting Existing Procedural HPC Application Codes(...)
summary
Claim: annotate existing C/Fortran loops with pragmas as functional annotations that declare algebraic properties (rings, associativity, neutral elements) so a compiler can reason about transformations and map code to targets. Implementation status: annotations lower to transforms to MPI/OpenMP/VHDL; prototype work uses manual follow‑up to generate parallel code. Concrete case: a 1D heat stencil paralyzed by hand on a 2,700‑node cluster (24 cores/node) shows the approach is workable though the automated toolchain is not yet complete and floating‑point associativity remains a correctness caveat.
AI-written summary · about
chapters (21)
- 0:00Start
- 1:01CPU Evolution
- 1:54Hazel Hen
- 2:59Amdahl Law
- 3:56The Problem
- 4:35Goals
- 4:56Current Parallel Programming
- 6:45Current Approaches (OmpSs)
- 7:20Our Approach
- 8:58Other Higher Order Functions
- 9:39Higher Order Functions Transformations HLR
- 11:33Hierarchical Structures
- 12:31Flat Structure
- 13:14Binding
- 14:17Mathematical Properties
- 15:14Data/Memory Organization
- 16:21Example - Mathematics
- 16:54Mathematics - Discretization
- 17:54Transformations - Partitioning 2
- 18:36Platform Specific Transformations
- 19:04Transformed Code
related talks
01h 07mParallel-by-construction Tree Manipulation with APL (Part 2)
02h 50mFunctional Array Funhouse Intensive - Part 3 of 5
14mAchieving High-Performance the Functional Way - A Functional Pearl on Expressing High...
53mIntroduction to C++ AMP (GPGPU Computing)
23mOffload Annotations: Bringing Heterogeneous Computing to Existing Libraries...
01h 07mGeneric Parallel Programming
18m(De/Re)-Composition of Data-Parallel Computations via Multi-Dimensional(…)
01h 04mSymbolic Calculus for High-performance Computing From Scratch Using C++23
