From 006b0ef7b0a7c022bdb0980168546cfa79b6ded9 Mon Sep 17 00:00:00 2001 From: Yurui Li <32978179+poohRui@users.noreply.github.com> Date: Thu, 6 May 2021 12:39:15 +0800 Subject: [PATCH] Add GetRank and GetWordSize interface (#4809) * add GetRank and GetWordSize interface * minor fix --- oneflow/api/python/env/env.cpp | 3 +++ oneflow/api/python/env/env.h | 3 +++ oneflow/api/python/env/env_api.h | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/oneflow/api/python/env/env.cpp b/oneflow/api/python/env/env.cpp index a6d0b7e0e..124ed6e78 100644 --- a/oneflow/api/python/env/env.cpp +++ b/oneflow/api/python/env/env.cpp @@ -30,4 +30,7 @@ ONEFLOW_API_PYBIND11_MODULE("", m) { m.def("DestroyEnv", &DestroyEnv, py::call_guard<py::gil_scoped_release>()); m.def("CurrentMachineId", &CurrentMachineId); + + m.def("GetRank", &GetRank); + m.def("GetWordSize", &GetWordSize); } diff --git a/oneflow/api/python/env/env.h b/oneflow/api/python/env/env.h index a8e96ce78..26e3d7844 100644 --- a/oneflow/api/python/env/env.h +++ b/oneflow/api/python/env/env.h @@ -91,6 +91,9 @@ inline Maybe<void> InitEnv(const std::string& env_proto_str) { inline Maybe<long long> CurrentMachineId() { return GlobalProcessCtx::Rank(); } +inline Maybe<int64_t> GetRank() { return GlobalProcessCtx::Rank(); } +inline Maybe<size_t> GetWordSize() { return GlobalProcessCtx::WorldSize(); } + } // namespace oneflow #endif // ONEFLOW_API_PYTHON_ENV_ENV_H_ diff --git a/oneflow/api/python/env/env_api.h b/oneflow/api/python/env/env_api.h index dfecc0bb4..fcc5953c8 100644 --- a/oneflow/api/python/env/env_api.h +++ b/oneflow/api/python/env/env_api.h @@ -40,4 +40,8 @@ inline void DestroyEnv() { return oneflow::DestroyEnv().GetOrThrow(); } inline long long CurrentMachineId() { return oneflow::CurrentMachineId().GetOrThrow(); } +inline int64_t GetRank() { return oneflow::GetRank().GetOrThrow(); } + +inline size_t GetWordSize() { return oneflow::GetWordSize().GetOrThrow(); } + #endif // ONEFLOW_API_PYTHON_ENV_ENV_API_H_ -- GitLab