-
Notifications
You must be signed in to change notification settings - Fork 52
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
Create dispatch system for executors #3263
Open
csarofeen
wants to merge
41
commits into
main
Choose a base branch
from
executor_dispatch
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+1,026
−595
Open
Changes from all commits
Commits
Show all changes
41 commits
Select commit
Hold shift + click to select a range
6aa977f
Broke apart executors, tests will fail, need dispatch.
csarofeen c23c38d
Change name: FusionExecutor -> KernelExecutor
csarofeen bf835ec
Draft executor dispatch.
csarofeen 3d7f017
Rename fe->ke for benchmarks.
csarofeen 61f7cb5
Fix instrumentation in executors.
csarofeen 48fdaef
Fix build with executor dispatch (still test failures). Make sure Fus…
csarofeen a44018e
Finish rename FusionExecutor fe -> KernelExecutor ke
csarofeen 0e10199
All but one nvfuser_tests pass.
csarofeen 8ed49a1
No op scheduler generates empty kernels.
csarofeen b8c3118
Rename HostIrExecutor to HostIrEvaluator, move HostIRExecutor to mult…
csarofeen 21340b4
Rename inputes/outputBytesAccessed to computeBytes
csarofeen 84c2332
In KernelExecutor rename compileFusion and runFusion to comile and run
csarofeen 075c293
Remove executor_abstract.cpp as it wasn't used
csarofeen 9229abd
Revert whitespace changes.
csarofeen fc5d788
Merge branch 'main' of https://github.com/NVIDIA/Fuser into executor_…
csarofeen fe05a3a
Fix merge conflicts.
csarofeen 76a100d
Fix matmul tests.
csarofeen 55b24f6
Fix executor in host ir evaluator for host unit, send it to KernelExe…
csarofeen d372ae2
Merge branch 'main' of https://github.com/NVIDIA/Fuser into executor_…
csarofeen 097674d
Merge fixes.
csarofeen c917725
clang tidy
csarofeen cb14bb9
profiler fix
csarofeen 88a58cd
Allow serializing uncompiled KernelExecutor.
csarofeen d829e41
Merge branch 'main' of https://github.com/NVIDIA/Fuser into executor_…
csarofeen 38cce1e
Merge fixes.
csarofeen 68e2692
Fix serialization errors in executor dispatch (#3353)
rdspring1 2749521
PR Comments part 1.
csarofeen 198e6d4
PR Comments part 2.
csarofeen f4acdb7
Merge branch 'main' into executor_dispatch
naoyam 6312789
Merge branch 'main' into executor_dispatch
naoyam 3f2503f
Last PR Comment cleanup.
csarofeen 8290e5c
Merge branch 'main' into executor_dispatch
naoyam dccaef0
Avoid clang-tidy warning
naoyam 9b1a4e4
Merge branch 'main' into executor_dispatch
naoyam b33c8e1
cleanup
naoyam 0c8043f
cleanup
naoyam b1634f3
cleanup
naoyam 6df7ae1
Merge branch 'main' into executor_dispatch
naoyam 6ebc56f
cleanup
naoyam f10c3af
typo
naoyam 5e24332
Set `fusion_id` and `device_id` of `KernelExecutor` in constructor fo…
rdspring1 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -326,17 +326,15 @@ SegmentProfiler::SegmentProfiler(uint32_t id, bool cupti_disabled) | |
output_bytes_(0), | ||
kernel_profile_state_(ProfilerState::Ready) {} | ||
|
||
void SegmentProfiler::startCompile(int device) { | ||
device_ = device; | ||
void SegmentProfiler::startCompile() { | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Separated out set device as a separate function. KernelExecutor knows device on compilation since runtime information is needed for it, the other executors set it in run. |
||
compile_timer_.start(); | ||
} | ||
|
||
void SegmentProfiler::stopCompile() { | ||
compile_timer_.stop(); | ||
} | ||
|
||
void SegmentProfiler::startKernel(int device) { | ||
device_ = device; | ||
void SegmentProfiler::startKernel() { | ||
NVF_CHECK( | ||
kernel_profile_state_ == ProfilerState::Ready, | ||
"ProfilerState is not Ready!", | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just moved this function to executor.cpp as it wasn't used anywhere else.