-
Notifications
You must be signed in to change notification settings - Fork 603
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
Merge main -> google #5262
Merged
Merged
Merge main -> google #5262
Conversation
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
Contributor
KoolJBlack
commented
Mar 31, 2021
- 1c59bd1 Removing a sketchy check that was preventing releases of ref ptrs. (Removing a sketchy check that was preventing releases of ref ptrs. #5258)
- b69eea4 Fix operation ordering issue during inlining of operations into dispatch regio..
- c86ad78 Add pattern to do affine.min canonicalization after tile and distribute (Add pattern to do affine.min canonicalization after tile and distribute #5251)
- d4304f3 Replace remaining uses of absl::make_unique with std::make_unique. (Replace remaining uses of absl::make_unique with std::make_unique. #5254)
- 21df2b1 Reverting change to vm_util.cc made in Fixing tracing on Windows and improving the dylib tracing statistics. #5252. (Reverting change to vm_util.cc made in #5252. #5255)
- d99234d Fixing status allocation to use the system allocator. (Fixing status allocation to use the system allocator. #5253)
- 082d07c Tidy up DispatchLinalgOnTensors tests (Tidy up DispatchLinalgOnTensors tests #5246)
- b668ef8 Fixing tracing on Windows and improving the dylib tracing statistics. (Fixing tracing on Windows and improving the dylib tracing statistics. #5252)
- 6ff9098 [CodeGen] Fuse linalg.fill and reduction linalg.generic ([CodeGen] Fuse linalg.fill and reduction linalg.generic #5242)
- 84b0c2c [CUDA codegen] Add pass to tile and distribute linalg ops to thread ([CUDA codegen] Add pass to tile and distribute linalg ops to threads #5234)
- 2f2e8e8 Properly consider offset in operand tying when excluding operands (Properly consider offset in operand tying when excluding operands #5241)
- 8712d40 make bazel build on macOS work again (make bazel build on macOS work again #5237)
- a6ca1fd Dropping the unused sequence dialect. (Dropping the unused sequence dialect. #5235)
- 46b31b0 Rewriting/simplifying DynamicLibrary in C. (Rewriting/simplifying DynamicLibrary in C. #5221)
- b12648d Fixed some testcases with static verification prototype for linalg operations ..
This allowed for a lot of file IO code to go away - there was needless abstraction here as there was only a single user of a lot of these things that was already platform-specialized. Progress on iree-org#4369 and iree-org#3848. Fixes iree-org#4642. Unblocks iree-org#3845, which can now be added cleanly.
This should be done upstream, if someone desires it.
* make bazel build on macOS work again * run yapf
…ree-org#5234) Also start adding framework to query tile size and workgroup size for different ops
This commit adjusts dispatch region formation to additionally recognize linalg.generic as a root op and reverses the order with which we decide fusion groups. This enables us to fuse linalg.generic output tensors into the same group, thus we can pull in the linalg.fill for reduction linalg.generic. This works for both tiled cases and non-tiled cases. We actually already treat linalg.generic as a root op (as a second step when deciding fusion groups). This simplifies the logic by unifying them into one. This avoids sad dispatch regions like the following: ```mlir flow.executable @call_dispatch_143 attributes {sym_visibility = "private"} { flow.dispatch.entry @call_dispatch_143 attributes {signature = () -> tensor<f32>, workgroup_rank = 3 : index} module { func @call_dispatch_143(%arg0: !flow.dispatch.tensor<writeonly:f32>) { %cst = constant 0xFF800000 : f32 %0 = linalg.init_tensor [] : tensor<f32> %1 = linalg.fill(%0, %cst) : tensor<f32>, f32 -> tensor<f32> flow.dispatch.tensor.store %1, %arg0 : tensor<f32> -> !flow.dispatch.tensor<writeonly:f32> return } } } ```
This commit removes the command-line option to force fusion and its uses in tests. This keeps us honest regarding what we support and what we not to avoid differences and surprises between test cases and real use cases. This commit also removes duplicate tests and merges tests into one file.
Using unbalanced malloc + system allocator free was breaking tracy.
…ree-org#5254) We use `std::make_unique` throughout the project. If we needed compatibility with older compilers, we could switch to `absl::make_unique` ([source](https://github.com/abseil/abseil-cpp/blob/9fde5a6eb081ea080f5aa895102a9154c3a2d09f/absl/memory/memory.h#L96-L103)) or add our own implementation without a dep on abseil (see iree-org#3848).
…te (iree-org#5251) Add pattern to do affine.min canonicalization after tile and distribute
…tch region (iree-org#5236) In general the operations cloned into a dispatch region could form a DAG. These operations have to be cloned while keeping the order amongst them consistent to not violate use-def chains. This changes adds a method to clone the operations in the right order. Also cleans up the dispatch region creation code. Fixes iree-org#5151.
…ree-org#5258) When moving the target must be released regardless of whether the pointers match in order to keep things balanced. This could happen in cases where a register contained a ref ptr and a function call returned the same pointer with the move bit set, leaking the release and failing to clobber. Fixes iree-org#5141.
Merged
KoolJBlack
added a commit
that referenced
this pull request
Apr 1, 2021
24774c5 Synchronize submodules with LLVM at llvm/llvm-project@fcf6800 10ae8dc Synchronize submodules with LLVM at llvm/llvm-project@fcf6800 46aa337 Integrate LLVM at llvm/llvm-project@fcf6800 54c8bf5 Merge pull request #5262 from KoolJBlack:main-to-google fda00cf Integrate LLVM at llvm/llvm-project@8396aeb 16670ba Integrate LLVM at llvm/llvm-project@afed50a 431ede6 Merge branch 'google' into main-to-google 7a8867c Integrate LLVM at llvm/llvm-project@c06a8f9 0a378bb Synchronize submodules with LLVM at llvm/llvm-project@73adc05 4fe87f3 Synchronize submodules with LLVM at llvm/llvm-project@73adc05 2c9e502 Integrate LLVM at llvm/llvm-project@73adc05 20a2ba4 Integrate LLVM at llvm/llvm-project@77d81c2 65945ba Update benefit of numerically unstable Sigmoid legalization to zero f2f173b Integrate LLVM at llvm/llvm-project@c51e91e 0a0db13 Integrate LLVM at llvm/llvm-project@4822830 3c3cb7c Integrate LLVM at llvm/llvm-project@20d5c42 01e8cb5 Integrate LLVM at llvm/llvm-project@594e0ba 1006028 Integrate LLVM at llvm/llvm-project@4157a07 8455942 Merge main -> google
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.