OMPC++:
A Portable High Performance Implementation of DSM using OpenC++ Reflection
Background
Current solutions - problems
Solution: Reflection or
gOpen Compilerh strategy
Solution: OpenJIT Project
OpenJIT general schema
This work - Open Compiler
DSM Experiment in C++
Overview of OMPC++
OMPC++ components
Work flow of
OMPC++
Software DSM
Software DSM(2)
Rules for source programs
written by users
Program Transformation(1)
OMPC++ metaclass sample code
Program Transformation(2)
Example: before and after
the transformation
Evaluation
Evaluation - Environtent
Continuous Read/Write
Blocked Stride r/w (worst
case)
CG Kernel (1) - Small
Problem
CG Kernel (2) - Large
Problem
SPLASH2 FFT
SPLASH2 LU
SPLASH2 LU (2)
Comparison with other Software DSM systems
Conclusion
Future work
XCh30
OMPC++ Components hierarchy
Cost of invalidations