Progress report 12/15/2021 (final)
- Dataset made up of both generated code and extracted patterns from real code benchmarks
- Process for DiscoPop analysis on code benchmarks researched and documented
- Script for automated DiscoPoP benchmark analysis and detected loop extraction.
- Script for automated DiscoPoP analysis on batches of files
- Meta-program generates varied patterns and counter-examples
- Sympy program specializes in generating stencil patterns
Progress report 11/18/2021
- Run discopop analyzer on Lulesh for dataset
- Write script to extract loops from Lulesh from discopop analyzer report
- Dataset program generation with Sympy
Currently working on
- Running discopop on other benchmarks (BOTS, NBP)
- Making Lulesh loops compilable (metaprogramming)
- Generate C code from AST pattern
- Generate AST trees from seed programs
Progress report 10/7/2021
Note: see here for latest updates
Done
- Install: llvm (from source) & Discopop on VM
- Read chapters 1, 2, 3.1-3.3, 3.5.2, 3.8.3, 4.1, 5.1, 7, 8.1 of textbook (Structured Parallel Programming Patterns for Efficient Computation).
- Create serial programs for parallelism patterns (can be found on VM)
- Test Discopop on the serial programs (parallelism patterns), output expected pragmas
Currently working on
- run Discopop on Lulesh
- write bash script to run Discopop on Benchmarks (Polybench, NAS, BOTS)
- Generate C from AST pattern
In the future
- Seed program generation (with SymPy)
- Generate AST trees from seed programs
- Generate C code from AST pattern (with CGen)