mirror of
https://github.com/zebrajr/pytorch.git
synced 2025-12-06 12:20:52 +01:00
This reverts commit 73f3d6d9aa.
Reapplies #150801
Test plan:
See #150801
submodule
Pull Request resolved: https://github.com/pytorch/pytorch/pull/151031
Approved by: https://github.com/fduwjj
36 lines
840 B
C++
36 lines
840 B
C++
#pragma once
|
|
|
|
#ifdef USE_C10D_GLOO
|
|
|
|
#include <string>
|
|
|
|
#include <c10/util/Registry.h>
|
|
#include <gloo/config.h>
|
|
#include <gloo/transport/device.h>
|
|
|
|
namespace c10d {
|
|
|
|
class TORCH_API GlooDeviceFactory {
|
|
public:
|
|
// Create new device instance for specific interface.
|
|
static std::shared_ptr<::gloo::transport::Device> makeDeviceForInterface(
|
|
const std::string& interface,
|
|
bool lazyInit);
|
|
|
|
// Create new device instance for specific hostname or address.
|
|
static std::shared_ptr<::gloo::transport::Device> makeDeviceForHostname(
|
|
const std::string& hostname,
|
|
bool lazyInit);
|
|
};
|
|
|
|
TORCH_DECLARE_SHARED_REGISTRY(
|
|
GlooDeviceRegistry,
|
|
::gloo::transport::Device,
|
|
const std::string&, /* interface */
|
|
const std::string&, /* hostname */
|
|
bool /* lazyInit */);
|
|
|
|
} // namespace c10d
|
|
|
|
#endif // USE_C10D_GLOO
|