快捷方式

功能开关

功能开关是 FBGEMM_GPU 代码库中提供的一种机制,它提供了一种一致的方法来根据环境设置启用和禁用实验性功能。

虽然它可以被视为环境变量的类型安全抽象,但请注意,功能开关是一种用于控制代码行为的**运行时机制**。

创建功能开关

如果意图是将某个功能引入代码库,但推迟其启用直到在生产工作负载中进一步验证,则应创建功能开关。

C++

要在 C++ 端定义一个功能开关,请在 fbgemm_gpu/config/feature_gates.h 中附加到 ENUMERATE_ALL_FEATURE_FLAGS X-宏定义。

#define ENUMERATE_ALL_FEATURE_FLAGS   \
  X(...)                              \
  ...                                 \
  X(EXAMPLE_FEATURE)  // <-- Append here

Python

要在 Python 端定义一个功能开关,只需在 fbgemm_gpu/config/feature_list.py 中向 FeatureGateName 枚举定义添加一个新值。

class FeatureGateName(Enum):
  ...
  # Add here
  EXAMPLE_FEATURE = auto()

虽然不是必需的,但最好镜像 fbgemm_gpu/config/feature_gates.h 中定义的枚举值以保持一致性。

启用功能开关

有关如何启用功能开关的代码示例,请参阅 功能开关 (C++)功能开关 (Python) 中的文档。

文档

访问全面的 PyTorch 开发者文档

查看文档

教程

为初学者和高级开发者提供深入的教程

查看教程

资源

查找开发资源并让您的问题得到解答

查看资源