-
Notifications
You must be signed in to change notification settings - Fork 10.7k
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
Rename ThreadPool::getThreadCount()
to getMaxConcurrency()
(NFC)
#82296
Conversation
This is addressing a long-time TODO to rename this misleading API. The old one is preserved for now but marked deprecated.
d381cf9
to
8c23692
Compare
@llvm/pr-subscribers-llvm-support @llvm/pr-subscribers-mlir-core Author: Mehdi Amini (joker-eph) ChangesThis is addressing a long-time TODO to rename this misleading API. The old one is preserved for now but marked deprecated. Full diff: https://github.com/llvm/llvm-project/pull/82296.diff 9 Files Affected:
diff --git a/bolt/tools/merge-fdata/merge-fdata.cpp b/bolt/tools/merge-fdata/merge-fdata.cpp
index 104991dabc5f07..c6dfd3cfdc56de 100644
--- a/bolt/tools/merge-fdata/merge-fdata.cpp
+++ b/bolt/tools/merge-fdata/merge-fdata.cpp
@@ -317,7 +317,8 @@ void mergeLegacyProfiles(const SmallVectorImpl<std::string> &Filenames) {
ThreadPoolStrategy S = optimal_concurrency(
std::max(Filenames.size() / 4, static_cast<size_t>(1)));
ThreadPool Pool(S);
- DenseMap<llvm::thread::id, ProfileTy> ParsedProfiles(Pool.getThreadCount());
+ DenseMap<llvm::thread::id, ProfileTy> ParsedProfiles(
+ Pool.getMaxConcurrency());
for (const auto &Filename : Filenames)
Pool.async(ParseProfile, std::cref(Filename), std::ref(ParsedProfiles));
Pool.wait();
diff --git a/clang/tools/clang-scan-deps/ClangScanDeps.cpp b/clang/tools/clang-scan-deps/ClangScanDeps.cpp
index e45ea700d87b94..0458a4b3ecec39 100644
--- a/clang/tools/clang-scan-deps/ClangScanDeps.cpp
+++ b/clang/tools/clang-scan-deps/ClangScanDeps.cpp
@@ -870,7 +870,7 @@ int clang_scan_deps_main(int argc, char **argv, const llvm::ToolContext &) {
EagerLoadModules);
llvm::ThreadPool Pool(llvm::hardware_concurrency(NumThreads));
std::vector<std::unique_ptr<DependencyScanningTool>> WorkerTools;
- for (unsigned I = 0; I < Pool.getThreadCount(); ++I)
+ for (unsigned I = 0; I < Pool.getMaxConcurrency(); ++I)
WorkerTools.push_back(std::make_unique<DependencyScanningTool>(Service));
std::vector<tooling::CompileCommand> Inputs =
@@ -894,13 +894,13 @@ int clang_scan_deps_main(int argc, char **argv, const llvm::ToolContext &) {
if (Verbose) {
llvm::outs() << "Running clang-scan-deps on " << Inputs.size()
- << " files using " << Pool.getThreadCount() << " workers\n";
+ << " files using " << Pool.getMaxConcurrency() << " workers\n";
}
llvm::Timer T;
T.startTimer();
- for (unsigned I = 0; I < Pool.getThreadCount(); ++I) {
+ for (unsigned I = 0; I < Pool.getMaxConcurrency(); ++I) {
Pool.async([&, I]() {
llvm::DenseSet<ModuleID> AlreadySeenModules;
while (auto MaybeInputIndex = GetNextInputIndex()) {
diff --git a/llvm/include/llvm/Support/ThreadPool.h b/llvm/include/llvm/Support/ThreadPool.h
index 5e67a312d5c7b5..03ebd35aa46dc4 100644
--- a/llvm/include/llvm/Support/ThreadPool.h
+++ b/llvm/include/llvm/Support/ThreadPool.h
@@ -104,9 +104,12 @@ class ThreadPool {
/// not to waste the thread.
void wait(ThreadPoolTaskGroup &Group);
- // TODO: misleading legacy name warning!
// Returns the maximum number of worker threads in the pool, not the current
// number of threads!
+ unsigned getMaxConcurrency() const { return MaxThreadCount; }
+
+ // TODO: misleading legacy name warning!
+ LLVM_DEPRECATED("Use getMaxConcurrency instead", "getMaxConcurrency")
unsigned getThreadCount() const { return MaxThreadCount; }
/// Returns true if the current thread is a worker thread of this thread pool.
diff --git a/llvm/lib/Debuginfod/Debuginfod.cpp b/llvm/lib/Debuginfod/Debuginfod.cpp
index 4928fcb3b3f879..1cf550721000eb 100644
--- a/llvm/lib/Debuginfod/Debuginfod.cpp
+++ b/llvm/lib/Debuginfod/Debuginfod.cpp
@@ -414,7 +414,7 @@ Error DebuginfodCollection::findBinaries(StringRef Path) {
sys::fs::recursive_directory_iterator I(Twine(Path), EC), E;
std::mutex IteratorMutex;
ThreadPoolTaskGroup IteratorGroup(Pool);
- for (unsigned WorkerIndex = 0; WorkerIndex < Pool.getThreadCount();
+ for (unsigned WorkerIndex = 0; WorkerIndex < Pool.getMaxConcurrency();
WorkerIndex++) {
IteratorGroup.async([&, this]() -> void {
std::string FilePath;
diff --git a/llvm/lib/LTO/LTO.cpp b/llvm/lib/LTO/LTO.cpp
index b38c568d10cd09..b5062580169da3 100644
--- a/llvm/lib/LTO/LTO.cpp
+++ b/llvm/lib/LTO/LTO.cpp
@@ -1537,7 +1537,7 @@ class InProcessThinBackend : public ThinBackendProc {
}
unsigned getThreadCount() override {
- return BackendThreadPool.getThreadCount();
+ return BackendThreadPool.getMaxConcurrency();
}
};
} // end anonymous namespace
diff --git a/mlir/include/mlir/IR/Threading.h b/mlir/include/mlir/IR/Threading.h
index 4dc067667ea402..0f71dc27cf391f 100644
--- a/mlir/include/mlir/IR/Threading.h
+++ b/mlir/include/mlir/IR/Threading.h
@@ -68,7 +68,7 @@ LogicalResult failableParallelForEach(MLIRContext *context, IteratorT begin,
// Otherwise, process the elements in parallel.
llvm::ThreadPool &threadPool = context->getThreadPool();
llvm::ThreadPoolTaskGroup tasksGroup(threadPool);
- size_t numActions = std::min(numElements, threadPool.getThreadCount());
+ size_t numActions = std::min(numElements, threadPool.getMaxConcurrency());
for (unsigned i = 0; i < numActions; ++i)
tasksGroup.async(processFn);
// If the current thread is a worker thread from the pool, then waiting for
diff --git a/mlir/lib/ExecutionEngine/AsyncRuntime.cpp b/mlir/lib/ExecutionEngine/AsyncRuntime.cpp
index 24835c555b682b..189902969f8d2f 100644
--- a/mlir/lib/ExecutionEngine/AsyncRuntime.cpp
+++ b/mlir/lib/ExecutionEngine/AsyncRuntime.cpp
@@ -437,7 +437,7 @@ extern "C" void mlirAsyncRuntimeAwaitAllInGroupAndExecute(AsyncGroup *group,
}
extern "C" int64_t mlirAsyncRuntimGetNumWorkerThreads() {
- return getDefaultAsyncRuntime()->getThreadPool().getThreadCount();
+ return getDefaultAsyncRuntime()->getThreadPool().getMaxConcurrency();
}
//===----------------------------------------------------------------------===//
diff --git a/mlir/lib/IR/MLIRContext.cpp b/mlir/lib/IR/MLIRContext.cpp
index 2fd9cac6df3d09..58ebe4fdec202d 100644
--- a/mlir/lib/IR/MLIRContext.cpp
+++ b/mlir/lib/IR/MLIRContext.cpp
@@ -638,7 +638,7 @@ unsigned MLIRContext::getNumThreads() {
if (isMultithreadingEnabled()) {
assert(impl->threadPool &&
"multi-threading is enabled but threadpool not set");
- return impl->threadPool->getThreadCount();
+ return impl->threadPool->getMaxConcurrency();
}
// No multithreading or active thread pool. Return 1 thread.
return 1;
diff --git a/mlir/lib/Pass/Pass.cpp b/mlir/lib/Pass/Pass.cpp
index 5ee0ae6525d179..3fb05e53866607 100644
--- a/mlir/lib/Pass/Pass.cpp
+++ b/mlir/lib/Pass/Pass.cpp
@@ -748,7 +748,7 @@ void OpToOpPassAdaptor::runOnOperationAsyncImpl(bool verifyPasses) {
// Create the async executors if they haven't been created, or if the main
// pipeline has changed.
if (asyncExecutors.empty() || hasSizeMismatch(asyncExecutors.front(), mgrs))
- asyncExecutors.assign(context->getThreadPool().getThreadCount(), mgrs);
+ asyncExecutors.assign(context->getThreadPool().getMaxConcurrency(), mgrs);
// This struct represents the information for a single operation to be
// scheduled on a pass manager.
|
@llvm/pr-subscribers-clang Author: Mehdi Amini (joker-eph) ChangesThis is addressing a long-time TODO to rename this misleading API. The old one is preserved for now but marked deprecated. Full diff: https://github.com/llvm/llvm-project/pull/82296.diff 9 Files Affected:
diff --git a/bolt/tools/merge-fdata/merge-fdata.cpp b/bolt/tools/merge-fdata/merge-fdata.cpp
index 104991dabc5f07..c6dfd3cfdc56de 100644
--- a/bolt/tools/merge-fdata/merge-fdata.cpp
+++ b/bolt/tools/merge-fdata/merge-fdata.cpp
@@ -317,7 +317,8 @@ void mergeLegacyProfiles(const SmallVectorImpl<std::string> &Filenames) {
ThreadPoolStrategy S = optimal_concurrency(
std::max(Filenames.size() / 4, static_cast<size_t>(1)));
ThreadPool Pool(S);
- DenseMap<llvm::thread::id, ProfileTy> ParsedProfiles(Pool.getThreadCount());
+ DenseMap<llvm::thread::id, ProfileTy> ParsedProfiles(
+ Pool.getMaxConcurrency());
for (const auto &Filename : Filenames)
Pool.async(ParseProfile, std::cref(Filename), std::ref(ParsedProfiles));
Pool.wait();
diff --git a/clang/tools/clang-scan-deps/ClangScanDeps.cpp b/clang/tools/clang-scan-deps/ClangScanDeps.cpp
index e45ea700d87b94..0458a4b3ecec39 100644
--- a/clang/tools/clang-scan-deps/ClangScanDeps.cpp
+++ b/clang/tools/clang-scan-deps/ClangScanDeps.cpp
@@ -870,7 +870,7 @@ int clang_scan_deps_main(int argc, char **argv, const llvm::ToolContext &) {
EagerLoadModules);
llvm::ThreadPool Pool(llvm::hardware_concurrency(NumThreads));
std::vector<std::unique_ptr<DependencyScanningTool>> WorkerTools;
- for (unsigned I = 0; I < Pool.getThreadCount(); ++I)
+ for (unsigned I = 0; I < Pool.getMaxConcurrency(); ++I)
WorkerTools.push_back(std::make_unique<DependencyScanningTool>(Service));
std::vector<tooling::CompileCommand> Inputs =
@@ -894,13 +894,13 @@ int clang_scan_deps_main(int argc, char **argv, const llvm::ToolContext &) {
if (Verbose) {
llvm::outs() << "Running clang-scan-deps on " << Inputs.size()
- << " files using " << Pool.getThreadCount() << " workers\n";
+ << " files using " << Pool.getMaxConcurrency() << " workers\n";
}
llvm::Timer T;
T.startTimer();
- for (unsigned I = 0; I < Pool.getThreadCount(); ++I) {
+ for (unsigned I = 0; I < Pool.getMaxConcurrency(); ++I) {
Pool.async([&, I]() {
llvm::DenseSet<ModuleID> AlreadySeenModules;
while (auto MaybeInputIndex = GetNextInputIndex()) {
diff --git a/llvm/include/llvm/Support/ThreadPool.h b/llvm/include/llvm/Support/ThreadPool.h
index 5e67a312d5c7b5..03ebd35aa46dc4 100644
--- a/llvm/include/llvm/Support/ThreadPool.h
+++ b/llvm/include/llvm/Support/ThreadPool.h
@@ -104,9 +104,12 @@ class ThreadPool {
/// not to waste the thread.
void wait(ThreadPoolTaskGroup &Group);
- // TODO: misleading legacy name warning!
// Returns the maximum number of worker threads in the pool, not the current
// number of threads!
+ unsigned getMaxConcurrency() const { return MaxThreadCount; }
+
+ // TODO: misleading legacy name warning!
+ LLVM_DEPRECATED("Use getMaxConcurrency instead", "getMaxConcurrency")
unsigned getThreadCount() const { return MaxThreadCount; }
/// Returns true if the current thread is a worker thread of this thread pool.
diff --git a/llvm/lib/Debuginfod/Debuginfod.cpp b/llvm/lib/Debuginfod/Debuginfod.cpp
index 4928fcb3b3f879..1cf550721000eb 100644
--- a/llvm/lib/Debuginfod/Debuginfod.cpp
+++ b/llvm/lib/Debuginfod/Debuginfod.cpp
@@ -414,7 +414,7 @@ Error DebuginfodCollection::findBinaries(StringRef Path) {
sys::fs::recursive_directory_iterator I(Twine(Path), EC), E;
std::mutex IteratorMutex;
ThreadPoolTaskGroup IteratorGroup(Pool);
- for (unsigned WorkerIndex = 0; WorkerIndex < Pool.getThreadCount();
+ for (unsigned WorkerIndex = 0; WorkerIndex < Pool.getMaxConcurrency();
WorkerIndex++) {
IteratorGroup.async([&, this]() -> void {
std::string FilePath;
diff --git a/llvm/lib/LTO/LTO.cpp b/llvm/lib/LTO/LTO.cpp
index b38c568d10cd09..b5062580169da3 100644
--- a/llvm/lib/LTO/LTO.cpp
+++ b/llvm/lib/LTO/LTO.cpp
@@ -1537,7 +1537,7 @@ class InProcessThinBackend : public ThinBackendProc {
}
unsigned getThreadCount() override {
- return BackendThreadPool.getThreadCount();
+ return BackendThreadPool.getMaxConcurrency();
}
};
} // end anonymous namespace
diff --git a/mlir/include/mlir/IR/Threading.h b/mlir/include/mlir/IR/Threading.h
index 4dc067667ea402..0f71dc27cf391f 100644
--- a/mlir/include/mlir/IR/Threading.h
+++ b/mlir/include/mlir/IR/Threading.h
@@ -68,7 +68,7 @@ LogicalResult failableParallelForEach(MLIRContext *context, IteratorT begin,
// Otherwise, process the elements in parallel.
llvm::ThreadPool &threadPool = context->getThreadPool();
llvm::ThreadPoolTaskGroup tasksGroup(threadPool);
- size_t numActions = std::min(numElements, threadPool.getThreadCount());
+ size_t numActions = std::min(numElements, threadPool.getMaxConcurrency());
for (unsigned i = 0; i < numActions; ++i)
tasksGroup.async(processFn);
// If the current thread is a worker thread from the pool, then waiting for
diff --git a/mlir/lib/ExecutionEngine/AsyncRuntime.cpp b/mlir/lib/ExecutionEngine/AsyncRuntime.cpp
index 24835c555b682b..189902969f8d2f 100644
--- a/mlir/lib/ExecutionEngine/AsyncRuntime.cpp
+++ b/mlir/lib/ExecutionEngine/AsyncRuntime.cpp
@@ -437,7 +437,7 @@ extern "C" void mlirAsyncRuntimeAwaitAllInGroupAndExecute(AsyncGroup *group,
}
extern "C" int64_t mlirAsyncRuntimGetNumWorkerThreads() {
- return getDefaultAsyncRuntime()->getThreadPool().getThreadCount();
+ return getDefaultAsyncRuntime()->getThreadPool().getMaxConcurrency();
}
//===----------------------------------------------------------------------===//
diff --git a/mlir/lib/IR/MLIRContext.cpp b/mlir/lib/IR/MLIRContext.cpp
index 2fd9cac6df3d09..58ebe4fdec202d 100644
--- a/mlir/lib/IR/MLIRContext.cpp
+++ b/mlir/lib/IR/MLIRContext.cpp
@@ -638,7 +638,7 @@ unsigned MLIRContext::getNumThreads() {
if (isMultithreadingEnabled()) {
assert(impl->threadPool &&
"multi-threading is enabled but threadpool not set");
- return impl->threadPool->getThreadCount();
+ return impl->threadPool->getMaxConcurrency();
}
// No multithreading or active thread pool. Return 1 thread.
return 1;
diff --git a/mlir/lib/Pass/Pass.cpp b/mlir/lib/Pass/Pass.cpp
index 5ee0ae6525d179..3fb05e53866607 100644
--- a/mlir/lib/Pass/Pass.cpp
+++ b/mlir/lib/Pass/Pass.cpp
@@ -748,7 +748,7 @@ void OpToOpPassAdaptor::runOnOperationAsyncImpl(bool verifyPasses) {
// Create the async executors if they haven't been created, or if the main
// pipeline has changed.
if (asyncExecutors.empty() || hasSizeMismatch(asyncExecutors.front(), mgrs))
- asyncExecutors.assign(context->getThreadPool().getThreadCount(), mgrs);
+ asyncExecutors.assign(context->getThreadPool().getMaxConcurrency(), mgrs);
// This struct represents the information for a single operation to be
// scheduled on a pass manager.
|
@llvm/pr-subscribers-mlir Author: Mehdi Amini (joker-eph) ChangesThis is addressing a long-time TODO to rename this misleading API. The old one is preserved for now but marked deprecated. Full diff: https://github.com/llvm/llvm-project/pull/82296.diff 9 Files Affected:
diff --git a/bolt/tools/merge-fdata/merge-fdata.cpp b/bolt/tools/merge-fdata/merge-fdata.cpp
index 104991dabc5f07..c6dfd3cfdc56de 100644
--- a/bolt/tools/merge-fdata/merge-fdata.cpp
+++ b/bolt/tools/merge-fdata/merge-fdata.cpp
@@ -317,7 +317,8 @@ void mergeLegacyProfiles(const SmallVectorImpl<std::string> &Filenames) {
ThreadPoolStrategy S = optimal_concurrency(
std::max(Filenames.size() / 4, static_cast<size_t>(1)));
ThreadPool Pool(S);
- DenseMap<llvm::thread::id, ProfileTy> ParsedProfiles(Pool.getThreadCount());
+ DenseMap<llvm::thread::id, ProfileTy> ParsedProfiles(
+ Pool.getMaxConcurrency());
for (const auto &Filename : Filenames)
Pool.async(ParseProfile, std::cref(Filename), std::ref(ParsedProfiles));
Pool.wait();
diff --git a/clang/tools/clang-scan-deps/ClangScanDeps.cpp b/clang/tools/clang-scan-deps/ClangScanDeps.cpp
index e45ea700d87b94..0458a4b3ecec39 100644
--- a/clang/tools/clang-scan-deps/ClangScanDeps.cpp
+++ b/clang/tools/clang-scan-deps/ClangScanDeps.cpp
@@ -870,7 +870,7 @@ int clang_scan_deps_main(int argc, char **argv, const llvm::ToolContext &) {
EagerLoadModules);
llvm::ThreadPool Pool(llvm::hardware_concurrency(NumThreads));
std::vector<std::unique_ptr<DependencyScanningTool>> WorkerTools;
- for (unsigned I = 0; I < Pool.getThreadCount(); ++I)
+ for (unsigned I = 0; I < Pool.getMaxConcurrency(); ++I)
WorkerTools.push_back(std::make_unique<DependencyScanningTool>(Service));
std::vector<tooling::CompileCommand> Inputs =
@@ -894,13 +894,13 @@ int clang_scan_deps_main(int argc, char **argv, const llvm::ToolContext &) {
if (Verbose) {
llvm::outs() << "Running clang-scan-deps on " << Inputs.size()
- << " files using " << Pool.getThreadCount() << " workers\n";
+ << " files using " << Pool.getMaxConcurrency() << " workers\n";
}
llvm::Timer T;
T.startTimer();
- for (unsigned I = 0; I < Pool.getThreadCount(); ++I) {
+ for (unsigned I = 0; I < Pool.getMaxConcurrency(); ++I) {
Pool.async([&, I]() {
llvm::DenseSet<ModuleID> AlreadySeenModules;
while (auto MaybeInputIndex = GetNextInputIndex()) {
diff --git a/llvm/include/llvm/Support/ThreadPool.h b/llvm/include/llvm/Support/ThreadPool.h
index 5e67a312d5c7b5..03ebd35aa46dc4 100644
--- a/llvm/include/llvm/Support/ThreadPool.h
+++ b/llvm/include/llvm/Support/ThreadPool.h
@@ -104,9 +104,12 @@ class ThreadPool {
/// not to waste the thread.
void wait(ThreadPoolTaskGroup &Group);
- // TODO: misleading legacy name warning!
// Returns the maximum number of worker threads in the pool, not the current
// number of threads!
+ unsigned getMaxConcurrency() const { return MaxThreadCount; }
+
+ // TODO: misleading legacy name warning!
+ LLVM_DEPRECATED("Use getMaxConcurrency instead", "getMaxConcurrency")
unsigned getThreadCount() const { return MaxThreadCount; }
/// Returns true if the current thread is a worker thread of this thread pool.
diff --git a/llvm/lib/Debuginfod/Debuginfod.cpp b/llvm/lib/Debuginfod/Debuginfod.cpp
index 4928fcb3b3f879..1cf550721000eb 100644
--- a/llvm/lib/Debuginfod/Debuginfod.cpp
+++ b/llvm/lib/Debuginfod/Debuginfod.cpp
@@ -414,7 +414,7 @@ Error DebuginfodCollection::findBinaries(StringRef Path) {
sys::fs::recursive_directory_iterator I(Twine(Path), EC), E;
std::mutex IteratorMutex;
ThreadPoolTaskGroup IteratorGroup(Pool);
- for (unsigned WorkerIndex = 0; WorkerIndex < Pool.getThreadCount();
+ for (unsigned WorkerIndex = 0; WorkerIndex < Pool.getMaxConcurrency();
WorkerIndex++) {
IteratorGroup.async([&, this]() -> void {
std::string FilePath;
diff --git a/llvm/lib/LTO/LTO.cpp b/llvm/lib/LTO/LTO.cpp
index b38c568d10cd09..b5062580169da3 100644
--- a/llvm/lib/LTO/LTO.cpp
+++ b/llvm/lib/LTO/LTO.cpp
@@ -1537,7 +1537,7 @@ class InProcessThinBackend : public ThinBackendProc {
}
unsigned getThreadCount() override {
- return BackendThreadPool.getThreadCount();
+ return BackendThreadPool.getMaxConcurrency();
}
};
} // end anonymous namespace
diff --git a/mlir/include/mlir/IR/Threading.h b/mlir/include/mlir/IR/Threading.h
index 4dc067667ea402..0f71dc27cf391f 100644
--- a/mlir/include/mlir/IR/Threading.h
+++ b/mlir/include/mlir/IR/Threading.h
@@ -68,7 +68,7 @@ LogicalResult failableParallelForEach(MLIRContext *context, IteratorT begin,
// Otherwise, process the elements in parallel.
llvm::ThreadPool &threadPool = context->getThreadPool();
llvm::ThreadPoolTaskGroup tasksGroup(threadPool);
- size_t numActions = std::min(numElements, threadPool.getThreadCount());
+ size_t numActions = std::min(numElements, threadPool.getMaxConcurrency());
for (unsigned i = 0; i < numActions; ++i)
tasksGroup.async(processFn);
// If the current thread is a worker thread from the pool, then waiting for
diff --git a/mlir/lib/ExecutionEngine/AsyncRuntime.cpp b/mlir/lib/ExecutionEngine/AsyncRuntime.cpp
index 24835c555b682b..189902969f8d2f 100644
--- a/mlir/lib/ExecutionEngine/AsyncRuntime.cpp
+++ b/mlir/lib/ExecutionEngine/AsyncRuntime.cpp
@@ -437,7 +437,7 @@ extern "C" void mlirAsyncRuntimeAwaitAllInGroupAndExecute(AsyncGroup *group,
}
extern "C" int64_t mlirAsyncRuntimGetNumWorkerThreads() {
- return getDefaultAsyncRuntime()->getThreadPool().getThreadCount();
+ return getDefaultAsyncRuntime()->getThreadPool().getMaxConcurrency();
}
//===----------------------------------------------------------------------===//
diff --git a/mlir/lib/IR/MLIRContext.cpp b/mlir/lib/IR/MLIRContext.cpp
index 2fd9cac6df3d09..58ebe4fdec202d 100644
--- a/mlir/lib/IR/MLIRContext.cpp
+++ b/mlir/lib/IR/MLIRContext.cpp
@@ -638,7 +638,7 @@ unsigned MLIRContext::getNumThreads() {
if (isMultithreadingEnabled()) {
assert(impl->threadPool &&
"multi-threading is enabled but threadpool not set");
- return impl->threadPool->getThreadCount();
+ return impl->threadPool->getMaxConcurrency();
}
// No multithreading or active thread pool. Return 1 thread.
return 1;
diff --git a/mlir/lib/Pass/Pass.cpp b/mlir/lib/Pass/Pass.cpp
index 5ee0ae6525d179..3fb05e53866607 100644
--- a/mlir/lib/Pass/Pass.cpp
+++ b/mlir/lib/Pass/Pass.cpp
@@ -748,7 +748,7 @@ void OpToOpPassAdaptor::runOnOperationAsyncImpl(bool verifyPasses) {
// Create the async executors if they haven't been created, or if the main
// pipeline has changed.
if (asyncExecutors.empty() || hasSizeMismatch(asyncExecutors.front(), mgrs))
- asyncExecutors.assign(context->getThreadPool().getThreadCount(), mgrs);
+ asyncExecutors.assign(context->getThreadPool().getMaxConcurrency(), mgrs);
// This struct represents the information for a single operation to be
// scheduled on a pass manager.
|
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.
Lg, thanks!
This is addressing a long-time TODO to rename this misleading API. The old one is preserved for now but marked deprecated.