LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads ›...
Transcript of LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads ›...
![Page 2: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/2.jpg)
OUTLINE
● Why Parallware?● ORNL & Appentra● Parallware Trainer (DEMO)● Conclusions
![Page 3: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/3.jpg)
Software modernization through parallelization with MPI+XHigh-level programming: X = OpenMP or OpenACC
WHY DEVELOPING PARALLWARE?
PARALLEL PROGRAMMING IS HARD!
Currently a manual process
Can we make it easier?
HPCWORKFLOW
![Page 4: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/4.jpg)
OUTLINE
● Why Parallware?● ORNL & Appentra● Parallware Trainer (DEMO)● Conclusions
![Page 5: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/5.jpg)
COLLABORATION ON TOOLS INNOVATION
ORNL & APPENTRA
ORNL Industrial Partnership Program, project CSC193: “Porting Parallware Tools to Large HPC Installations including Titan” (2015-2016)
Fernanda Foertter Oscar Hernandez
Jacobo Lobeiras, Manuel Arenaz, Oscar Hernández: Experiences in extending parallware to support OpenACC. WACCPD@SC 2015: 4:1-4:12
![Page 6: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/6.jpg)
ORNL & APPENTRA
This research used resources of the Oak Ridge Leadership Computing Facility, which is a DOE Office of Science User Facility supported under Contract DE-AC05-00OR22725.
ValidationDeploymentReal environment
TECHNOLOGY
}{2x - 40xTitanMicrobenchmarks
![Page 7: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/7.jpg)
ORNL & APPENTRA
NewcomersLearningMicrobenchmarks
TRAINING
{ }Work onspecification of new tools for productive HPC training
![Page 8: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/8.jpg)
OUTLINE
● Why Parallware?● ORNL & Appentra● Parallware Trainer (DEMO)● Conclusions
![Page 9: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/9.jpg)
Interactive Tool for HPC Training“Tell me, I will forget,Show me, I may remember,Involve me, I will understand.” - Confucius
Emerging Technologies
- Higher productivity in HPC training
- “Learn by Doing” & “Student-Centric”
EXPERIENTIAL LEARNING
![Page 10: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/10.jpg)
Interactive Tool for HPC Training“Tell me, I will forget,Show me, I may remember,Involve me, I will understand.” - Confucius
- Mandelbrot
- Sparse Matrix - Vector product
- Laplace computations
- PGI compiler OpenMP & OpenACC
MICROBENCHMARKS
![Page 11: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/11.jpg)
- Interactive real-time editor GUI
- Assisted code parallelization using OpenMP & OpenACC
- Programming language C
- Detailed report of the parallelism discovered in the code
- Support for multiple compilers
Interactive Tool for HPC Training“Tell me, I will forget,Show me, I may remember,Involve me, I will understand.” - Confucius
“Take-away your work” (based on make & ssh)
TECHNICAL FEATURES
![Page 12: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/12.jpg)
OUTLINE
● Why Parallware?● ORNL & Appentra● Parallware Trainer (DEMO)● Conclusions
![Page 13: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/13.jpg)
CONCLUSIONS
● Present Parallware Trainer atSC16 Emerging Technologies Showcase○ Tuesday, Wednesday, Thursday 9:00 AM - 17:30 PM, Room 155-B○ Also booth talks at DoE, OpenMP and OpenACC
● Parallware Trainer Early Access Program:○ Invitation to participate (we need feedback)○ Contact me <[email protected]>
● Continue ORNL & Appentra collaboration:○ Prototype of Parallware Assistant for HPC developers○ Search other innovative tools based on Parallware
![Page 14: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/14.jpg)
CONCLUSIONS
● Present Parallware Trainer atSC16 Emerging Technologies Showcase○ Tuesday, Wednesday, Thursday 9:00 AM - 17:30 PM, Room 155-B○ Also booth talks at DoE, OpenMP and OpenACC
● Parallware Trainer Early Access Program:○ Invitation to participate (we need feedback from users)○ Contact me <[email protected]>
● Continue ORNL & Appentra collaboration:○ Prototype of Parallware Assistant for HPC developers○ Search other innovative tools based on Parallware
![Page 15: LLVM-based Software for Guided Parallelization with OpenMP › wp-content › uploads › Arenaz... · LLVM-based Software for Guided Parallelization with OpenMP Manuel Arenaz manuel.arenaz@apppentra.com](https://reader036.fdocuments.us/reader036/viewer/2022062602/5ed46f1b5e2d82034d6439e5/html5/thumbnails/15.jpg)
CONCLUSIONS
● Present Parallware Trainer atSC16 Emerging Technologies Showcase○ Tuesday, Wednesday, Thursday 9:00 AM - 17:30 PM, Room 155-B○ Also booth talks at DoE, OpenMP and OpenACC
● Parallware Trainer Early Access Program:○ Invitation to participate (we need feedback)○ Contact me <[email protected]>
● Continue ORNL & Appentra collaboration:○ Prototype of Parallware Assistant for HPC developers○ Search other innovative tools based on Parallware