Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GPU pipeline reorganization #968

Merged
merged 5 commits into from
Sep 13, 2024
Merged

Conversation

adam-smnk
Copy link
Collaborator

@adam-smnk adam-smnk commented Sep 12, 2024

Cleans up and simplifies GPU pipeline in preparation for unified vector based lowering.

The main goal is to retire old experimental paths and prepare for more common vendor-agnostic lowering infrastructure.
It is another step toward GPU codegen through vectorization.

Summary of changes:

  • moves to tiling based kernel outlining - retires naive outlining based on Linalg to parallel loops conversion
  • retires packed GEMM GPU kernels - currently irrelevant for GPU kernel creation
  • retires custom Linalg to WMMA lowering - to be replaced with generic vectorization scheme in the future
  • cleanups tests and adjusts existing ones to pipeline changes
  • allows to override default GPU tiling sizes and to use tile setting provided by DLTI (for now uses CPU tile size)

@adam-smnk adam-smnk added the benchmark Triggers benchmark jobs label Sep 12, 2024
@adam-smnk adam-smnk changed the title Reorganize GPU pipeline GPU pipeline reorganization Sep 12, 2024
@adam-smnk
Copy link
Collaborator Author

As with the previous GPU cleanup, a quick sanity check should be enough. 🙂

Copy link
Contributor

@rolfmorel rolfmorel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine to me 👍

@adam-smnk
Copy link
Collaborator Author

Rebase on main plus removed small unused leftovers.

@adam-smnk adam-smnk merged commit 7b521f2 into plaidml:main Sep 13, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
benchmark Triggers benchmark jobs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants