[all-commits] [llvm/llvm-project] 3d95d1: [mlir] AsyncRuntime: fix concurrency bugs + fix ex...
Eugene Zhulenev via All-commits
all-commits at lists.llvm.org
Tue Nov 24 03:53:32 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 3d95d1b477dee6c1a01f6802527b60ba74271ed5
https://github.com/llvm/llvm-project/commit/3d95d1b477dee6c1a01f6802527b60ba74271ed5
Author: Eugene Zhulenev <ezhulenev at google.com>
Date: 2020-11-24 (Tue, 24 Nov 2020)
Changed paths:
M mlir/lib/ExecutionEngine/AsyncRuntime.cpp
Log Message:
-----------
[mlir] AsyncRuntime: fix concurrency bugs + fix exports in methods definitions
1. Move ThreadPool ownership to the runtime, and wait for the async tasks completion in the destructor.
2. Remove MLIR_ASYNCRUNTIME_EXPORT from method definitions because they are unnecessary in .cpp files, as only function declarations need to be exported, not their definitions.
3. Fix concurrency bugs in group emplace and potential use-after-free in token emplace.
Tested internally 10k runs in `async.mlir` and `async-group.mlir`.
Fixed: https://bugs.llvm.org/show_bug.cgi?id=48267
Reviewed By: mehdi_amini
Differential Revision: https://reviews.llvm.org/D91988
More information about the All-commits
mailing list