Skip to content

Commit

Permalink
Update README and workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
vgene committed Oct 24, 2024
1 parent 8505f85 commit 020a4ca
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 6 deletions.
1 change: 1 addition & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ jobs:
with:
repository: arcana-lab/noelle
path: noelle
ref: v9

- name: Build Noelle
if: steps.cache.outputs.cache-hit != 'true'
Expand Down
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ The .rc file is generated in PROMPT/install
#### Preprocessing

1. Generate a single LLVM bitcode file
2. (No need to do it manually if specifying a pair of function and basic block in `slamp-driver`) Annoteate Metadata ID for functions, basic blocks, and instructions with `-metadata-namer` pass
2. (No need to do it manually if specifying a pair of function and basic block in `slamp-driver`) Annotate Metadata ID for functions, basic blocks, and instructions with `-metadata-namer` pass
3. (optional) Run loop profile to generate `loopProf.out`

#### Run PROMPT
Expand Down Expand Up @@ -73,36 +73,36 @@ Note that the first dependence of a loop is always `[loop id, 0, 0, 0, 0, 0]`, s
### TODOs

#### Decoupling

- [x] Compile with NOELLE and SCAF
- [x] Compile with NOELLE and SCAF (without Speculation Modules)
- [x] Seperate all profiling modules out
- [x] Make LTO optional
- [x] Convert producer library to be configurable

#### Implementation
- [ ] Replace malloc hook (removed in glibc 2.35)

- [ ] External function handling: currently disabled in `SLAMP.cpp` by not doing the replacements
- [ ] External function handling with correct report of allocation events
- [ ] Multithreaded profiling?
- [ ] Multiple loops at the same time
- [ ] Package the components better
- The queue
- The container
- [ ] Parallel Containers
- Replace the vector with a lower-latency memory region
- [ ] 16 bytes load and store handling

#### Integration

- [ ] Replace SpecPriv profiler and LAMP with PROMPT
- Check the problem with the failed and long-running benchmarks

#### Debug & Testing

- [ ] Check the slowdown problem with multiple backend running together
- [ ] Check the slowdown problem when multiple containers running together
- [ ] Test with newer version of LLVM
- [ ] Test with way bigger benchmarks

#### Documentation

- [ ] Preprocessing tasks
- [ ] Simple demo
- [ ] Get started doc
Expand Down
File renamed without changes.
50 changes: 50 additions & 0 deletions tests/regression/Makefile.generic
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,56 @@ $(PLAIN).o3.exe : $(PLAIN).o3.bc
loop-profile $<
date


#
# PROMPT profile
#
#
benchmark.prompt.exe.wp-dep : benchmark.bc
prompt-driver benchmark.bc -m wp-dep --skip-run
- cp benchmark.named.slamp.exe $@

benchmark.prompt.exe.privateer : benchmark.bc
prompt-driver benchmark.bc -m privateer --skip-run
- cp benchmark.named.slamp.exe $@


benchmark.prompt.exe.% : benchmark.bc
prompt-driver benchmark.bc -m $* --skip-run --target-loop $(TARGET_LOOP) --target-fcn $(TARGET_FCN)
- cp benchmark.named.slamp.exe $@

benchmark.result.prompt.profile.ol : benchmark.prompt.exe.ol
date
$(PROFILESETUP)
$(SETUP)
PROFILEARGS="$(PROFILEARGS)" prompt-driver -m ol --skip-build --exe benchmark.prompt.exe.ol -t 1
$(CLEANUP)
date

benchmark.result.prompt.profile.privateer: benchmark.prompt.exe.privateer
date
$(PROFILESETUP)
$(SETUP)
PROFILEARGS="$(PROFILEARGS)" prompt-driver -m privateer --skip-build --exe benchmark.prompt.exe.privateer -t 1
$(CLEANUP)
date

benchmark.result.prompt.profile.wp-dep : benchmark.prompt.exe.wp-dep
date
$(PROFILESETUP)
$(SETUP)
PROFILEARGS="$(PROFILEARGS)" prompt-driver -m wp-dep --skip-build --exe benchmark.prompt.exe.wp-dep -t 1
$(CLEANUP)
date

benchmark.result.prompt.profile.% : benchmark.prompt.exe.%
date
$(PROFILESETUP)
$(SETUP)
PROFILEARGS="$(PROFILEARGS)" prompt-driver -m $* --skip-build --exe benchmark.prompt.exe.$* -t 8
$(CLEANUP)
date

#
# SLAMP profile
#
Expand Down

0 comments on commit 020a4ca

Please sign in to comment.