arcana-lab / noelle

NOELLE Offers Empowering LLVM Extensions
MIT License
72 stars 34 forks source link

Extend LoopEnvironment abstractions to allow client select partial of environment variables #39

Closed yiansu closed 2 years ago

yiansu commented 2 years ago

Overview

The PR adds the support to allow client to select part of environment variables. i.e, in reducible operations, the initial value, which is a live-in variable, doesn't need to be included into the task but can be later initialized with the identity value of that operation in the cloned task instead. Below is a breakdown of all the changes to different classes in NOELLE. Two clients, DOALL and HELIX has been modified to ignore the initial value while parallelized with reducible operations.

DOALL

ParallelizationTechnique

LoopEnvironmentBuilder

Task