[all-commits] [llvm/llvm-project] 11067d: [mlir] Optimize OperationName construction and usage
River Riddle via All-commits
all-commits at lists.llvm.org
Thu Jan 13 21:22:01 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 11067d711bca10ce740d0673073576bb81f50e06
https://github.com/llvm/llvm-project/commit/11067d711bca10ce740d0673073576bb81f50e06
Author: River Riddle <riddleriver at gmail.com>
Date: 2022-01-13 (Thu, 13 Jan 2022)
Changed paths:
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/OperationSupport.h
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
M mlir/lib/Dialect/Vector/VectorUnrollDistribute.cpp
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/IR/OperationSupport.cpp
Log Message:
-----------
[mlir] Optimize OperationName construction and usage
When constructing an OperationName, the overwhelming majority of
cases are from registered operations. This revision adds a non-locked
lookup into the currently registered operations, which prevents locking
in the common case. This revision also optimizes several uses of
RegisteredOperationName that expect the operation to be registered,
e.g. such as in OpBuilder.
These changes provides a reasonable speedup (5-10%) in some
compilations, especially on platforms where locking is expensive.
Differential Revision: https://reviews.llvm.org/D117187
More information about the All-commits
mailing list