-
-
Notifications
You must be signed in to change notification settings - Fork 5.7k
RFC: Experimental API for may-happen in parallel parallelism #39773
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
Open
tkf
wants to merge
97
commits into
master
Choose a base branch
from
tkf/jltapir-pr
base: master
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.
Open
Changes from all commits
Commits
Show all changes
97 commits
Select commit
Hold shift + click to select a range
1b65c4e
Experimental API for may-happen in parallel parallelism
tkf 832840e
Fix miscompilation due to SROA
tkf 0cff766
Lower Tapir after inlining
tkf 8033f9a
Merge branch 'master' into tkf/jltapir-pr
tkf 95b7f4b
Fix unremoved syncregion in outlined tasks
tkf 2e89f46
Merge branch 'master' into tkf/jltapir-pr
tkf 97e1ab2
Dispatchable Tapir.sync!
tkf 02bbe8b
Lower Tapir.Output to Upsilon
tkf 551d38f
Handle possibly-unset upsilon nodes
tkf 8bb9124
Support SROA via PhiC
tkf a3a5c4a
Add lower_tapir_to_ircode
tkf 65a5441
Minor refactoring
tkf 312131e
Use compact! in fixup_tapir_phi!
tkf c2f9ef4
Don't remove unreachables
tkf 25b928c
Catch exception in continuations
tkf a663092
Fix an exception thrown in inference
tkf 551f483
Fix a bug with unreachable spawns
tkf 3345af7
Don't spawn trivial thunk
tkf 9c0f54c
Support nested spawns
tkf 6214038
Analyze nested tasks in one pass
tkf bb12053
Don't spawn when continuation is trivial
tkf d5a1c80
Support pre-defined output
tkf d9a0c1c
Support conditional output
tkf 37d6036
Cleanup
tkf 5a9ad86
Don't spawn tasks that always throw
tkf 3c50fc8
Use primary_world
tkf b381848
Static dispatch to runtime
tkf 7d485dc
Fall-through detach for easier serial projection
tkf 9197c06
Use mutable struct for task output
tkf b435bcb
Remove spawn late
tkf 62e0c6f
Fix/add some comments
tkf 6127a1c
Fix SROA
tkf a2376e2
Improve detected racy error
tkf a9338a2
Avoid explicit recursion for task tree traversal
tkf 29d8e0a
Worklistify
tkf 1b2b580
Keep task output slots in IRCode
tkf 3da5359
Support conditionally defined task outputs
tkf 46d1e72
Use a new AST node for declaring task outputs
tkf 3225567
Fix race detection
tkf 13fea8f
Fix spellings
tkf 72e40a3
Cleanup
tkf 0ae349a
Stop using insert_new_nodes
tkf 5903aab
Document allocate_new_blocks! etc.
tkf d3c6f1a
Cleanup
tkf 687fe6c
Remove a stale workaround in check_op
tkf fff7019
Remove is_sequential; properly define has_tapir
tkf cae8666
Implement verify_ir for Tapir
tkf 460fac7
Remove remove_tapir!(src::CodeInfo)
tkf 0e42c3e
Cleanup
tkf b12a3bc
Merge branch 'master'
tkf f6c263a
Handle deleted syncregion
tkf c58dc7f
Allow slot in typ_for_val
tkf f5ea99f
Remove PhiC/Upsilon-based task output lowering
tkf 11bd862
Try not to allocate TaskGroup if possible
tkf 8d32706
Root newly created src in jl_emit_code
tkf 0ce4bbb
Null out some GC roots
tkf bcd19f4
Specify taskgroup in frontend
tkf fd4bd89
Dispatch Tapir.spawn on TaskGroup type
tkf fb42845
Fix verify_ir return type
tkf 8db2fc9
Infer Tapir.spawn output type
tkf 989612e
Test outputs set before spawn
tkf a76bbc8
Specify TaskGroup via `Tapir.@sync`
tkf ea93844
Fix optimize_taskgroups!
tkf 2db948e
Merge branch 'master'
tkf 2177d1a
Fix sync_return_type
tkf 061b7e3
Use stmt_effect_free in is_trivial_for_spawn
tkf d0e73dc
Fix a typo
tkf 59923d0
Ad-hoc remark API
tkf 6e52f92
Use the effect free flag
tkf cdb6ad7
Add Tapir.dontoptimize
tkf 15f7f3c
Fix a typo
tkf ebfe83d
Implement "SROA" on task output
tkf b2cb2a3
Implement dead store elimination for task output
tkf 11c4afd
Set inferred flag
tkf c385087
Use GlobalRef
tkf 0218d76
Enhance/fix documentation and comments
tkf a4435b0
Fix a typo in stmt_effect_free usage
tkf b40e220
Disambiguate synctasks
tkf c799255
Merge branch 'master' into tkf/jltapir-pr
tkf bb9e95a
Fix a stale docstring
tkf 43b2013
Formatting
tkf c0b7da7
Remove unintended merge artifact
tkf cf0b0c7
Use Tuple as opaque closure self type
tkf 3efd899
Merge branch 'master' into tkf/jltapir-pr
tkf 3c25b37
Post-merge fixups
tkf c0e3d23
Example for disallow_detach_after_sync!
tkf 30416fe
More robust invoke_escaped_spawn test
tkf 368024f
Fix a bug in resolve_syncregion
tkf 36eafe0
Merge branch 'master' into tkf/jltapir-pr
tkf de252be
Post-merge fix: convert_to_ircode signature
tkf 2baa44f
Fix Tapir DSE for half-constructed Tapir module
tkf fd1f826
Merge branch 'master' into tkf/jltapir-pr
tkf 54b8c59
Merge branch 'master' into tkf/jltapir-pr
tkf 298da7d
Merge branch 'master' into tkf/jltapir-pr
tkf 97d3cec
Fix a typo (not `slot2ref`)
tkf d43027d
Rename parallel_getfield_elim_checker -> parallel_sroa_checker
tkf 3bbc6e1
Merge branch 'master' into tkf/jltapir-pr
tkf 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 hidden or 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 hidden or 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 hidden or 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 hidden or 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 hidden or 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 hidden or 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.
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.
Uh oh!
There was an error while loading. Please reload this page.