Skip to content

Trace replay kernel#234

Open
plavin wants to merge 23 commits intospatter-develfrom
trace-replay
Open

Trace replay kernel#234
plavin wants to merge 23 commits intospatter-develfrom
trace-replay

Conversation

@plavin
Copy link
Copy Markdown
Contributor

@plavin plavin commented Jan 22, 2025

Overview

This PR adds support for a new kernel which replays a DynamoRio trace in Spatter.

✨ Change Description/Rationale

  • This PR adds a new kernel, trace replay. Existing Spatter kernels are very restrictive on the read/write mix, either all read, all write, or a roughly 50/50 split. This new mode reads in a DynamoRio trace and adds the address information to one buffer, and the read/write information to another. When the kernel runs, the kernel will decide if each access is a read or a write dependent on this trace.

  • To use the new kernel, specify it with -k trace on the command line. A trace file must also be given with --tracefile.

👀 Reviewer Checklist

  • All GitHub actions and runners have passed if applicable
  • Commits are clean and relevant

✅ PR Checklist

  • Remove or update the template boilerplate text
  • Commits are relevant and combined where appropriate
  • Rebase off spatter-devel
  • Reviewers Requested
  • Projects associated
  • Commits mention issue and/or PR numbers at the bottom of the message
  • Relevant issues are linked into the PR
  • TODOs are completed
  • Reviewer checklist is updated

🚀 TODOs

  • Determine how to handle dependencies between accesses in the kernel
  • Add OpenMP kernel
  • Add CUDA kernel
  • Add sample trace file to repo for testing
  • Add tests
  • Determine if support is needed in the JSON parser
  • Add details on how to collect traces for use with this kernel
  • Delete code in the trace-replay/ folder (this folder was for prototyping)

📌 Future Work

  • This PR aims to have functional trace replay kernels for each backend. Optimizing them is left to future work.

dependabot bot and others added 22 commits August 29, 2024 18:09
Bumps [jupyterlab](https://github.com/jupyterlab/jupyterlab) from 4.2.2 to 4.2.5.
- [Release notes](https://github.com/jupyterlab/jupyterlab/releases)
- [Changelog](https://github.com/jupyterlab/jupyterlab/blob/@jupyterlab/lsp@4.2.5/CHANGELOG.md)
- [Commits](https://github.com/jupyterlab/jupyterlab/compare/@jupyterlab/lsp@4.2.2...@jupyterlab/lsp@4.2.5)

---
updated-dependencies:
- dependency-name: jupyterlab
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
…erlab-4.2.5

Bump jupyterlab from 4.2.2 to 4.2.5 in /notebooks
Added new checks for spatter-devel branch
Updating the GitHub workflow to run on push and pull_request
Updates to fix GPU Stream tests, Kernel Validation
Added an initial contributing guide to the repo.
Fix badge issue with README
@plavin plavin added the work in progress Pull request is not ready to be merged label Jan 22, 2025
@plavin
Copy link
Copy Markdown
Contributor Author

plavin commented Jan 22, 2025

Looks like I need to clean up the commit history.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

work in progress Pull request is not ready to be merged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants