diff --git a/docs/api/paddle/Overview_cn.rst b/docs/api/paddle/Overview_cn.rst index 07df7fd02e4..12212372d35 100755 --- a/docs/api/paddle/Overview_cn.rst +++ b/docs/api/paddle/Overview_cn.rst @@ -636,6 +636,8 @@ device 相关 " :ref:`paddle.get_cuda_rng_state ` ", "获取 cuda 随机数生成器的状态信息" " :ref:`paddle.set_cuda_rng_state ` ", "设置 cuda 随机数生成器的状态信息" + " :ref:`paddle.get_default_device ` ", "获取当前默认设备信息" + " :ref:`paddle.get_device_module ` ", "获取指定设备对应的模块" .. _about_hapi: diff --git a/docs/api/paddle/cuda/Overview_cn.rst b/docs/api/paddle/cuda/Overview_cn.rst index 31214bb21b5..2654b2d5084 100644 --- a/docs/api/paddle/cuda/Overview_cn.rst +++ b/docs/api/paddle/cuda/Overview_cn.rst @@ -16,5 +16,13 @@ PyTorch 兼容函数 " :ref:`check_error ` ", "检测 CUDA 错误码" " :ref:`cudart ` ", "以模块的形式返回 CUDA Runtime 对象" + " :ref:`current_stream ` ", "获取当前 CUDA 流" + " :ref:`get_device_properties ` ", "获取 CUDA 设备属性" + " :ref:`get_rng_state ` ", "获取随机数生成器状态" + " :ref:`is_available ` ", "检查 CUDA 是否可用" + " :ref:`is_current_stream_capturing ` ", "检查当前流是否处于捕获状态" " :ref:`is_initialized ` ", "判断 CUDA 是否已经初始化" + " :ref:`manual_seed_all ` ", "设置全局随机种子" " :ref:`mem_get_info ` ", "获取指定设备上的全局空闲显存和显存总量" + " :ref:`set_rng_state ` ", "设置随机数生成器状态" + " :ref:`synchronize ` ", "同步 CUDA 设备" diff --git a/docs/api/paddle/cuda/current_stream_cn.rst b/docs/api/paddle/cuda/current_stream_cn.rst new file mode 100644 index 00000000000..c28207ae3f8 --- /dev/null +++ b/docs/api/paddle/cuda/current_stream_cn.rst @@ -0,0 +1,24 @@ +.. _cn_api_paddle_cuda_current_stream: + +current_stream + +.. py:function:: paddle.cuda.current_stream(device=None) + +该功能用于获取指定 CUDA 设备上当前正在使用的计算流(Stream)。 + +参数 +::::::::: + • device (int | str | CUDAPlace | CustomPlace | None,可选) – 指定需要查询的设备。 + • None:获取当前设备上的默认计算流。 + • int:设备索引,例如 0 表示 cuda:0。 + • str:设备字符串,例如 'cuda:0' 或 'gpu:1'。 + • CUDAPlace:Paddle 的 CUDAPlace 对象。 + • CustomPlace:Paddle 的自定义设备 Place 对象。 + +返回 +::::::::: +core.CUDAStream,当前设备对应的 CUDA 计算流对象。 + +代码示例 +::::::::: +COPY-FROM: paddle.cuda.current_stream \ No newline at end of file diff --git a/docs/api/paddle/cuda/get_device_properties_cn.rst b/docs/api/paddle/cuda/get_device_properties_cn.rst new file mode 100644 index 00000000000..dae44a6114c --- /dev/null +++ b/docs/api/paddle/cuda/get_device_properties_cn.rst @@ -0,0 +1,25 @@ +.. _cn_api_paddle_cuda_get_device_properties: + +get_device_properties +------------------------------- + +.. py:function:: paddle.cuda.get_device_properties(device=None) + +获取CUDA设备的属性信息。 + +参数 +::::::::: +- **device** (int | str | paddle.CUDAPlace | paddle.CustomPlace | None, 可选) - 要查询的目标设备: + + - None: 使用当前设备 + - int: 设备索引 (例如: 0 -> 'gpu:0') + - str: 设备字符串 (例如: "cuda:0", "gpu:1") + - CUDAPlace 或 CustomPlace: Paddle设备对象 + +返回 +::::::::: +DeviceProperties: 包含设备属性的对象,如名称、总内存、计算能力和多处理器数量等。 + +代码示例 +:::::::::::: +COPY-FROM: paddle.cuda.get_device_properties \ No newline at end of file diff --git a/docs/api/paddle/cuda/get_rng_state_cn.rst b/docs/api/paddle/cuda/get_rng_state_cn.rst new file mode 100644 index 00000000000..1206d96ecec --- /dev/null +++ b/docs/api/paddle/cuda/get_rng_state_cn.rst @@ -0,0 +1,23 @@ +.. _cn_api_paddle_cuda_get_rng_state: + +get_rng_state +------------------------------- + +.. py:function:: paddle.cuda.get_rng_state(device=None) + +返回指定设备的随机数生成器状态,以GeneratorState形式表示。 + +参数 +::::::::: +- **device** (DeviceLike, 可选) - 要获取RNG状态的设备: + + - 如果不指定,则使用当前默认设备(由paddle.framework._current_expected_place_()返回) + - 可以是设备对象、整数设备ID或设备字符串 + +返回 +::::::::: +core.GeneratorState: 指定设备的当前RNG状态,以GeneratorState形式表示。 + +代码示例 +:::::::::::: +COPY-FROM: paddle.cuda.get_rng_state diff --git a/docs/api/paddle/cuda/is_available_cn.rst b/docs/api/paddle/cuda/is_available_cn.rst new file mode 100644 index 00000000000..1fabc5920ff --- /dev/null +++ b/docs/api/paddle/cuda/is_available_cn.rst @@ -0,0 +1,22 @@ +.. _cn_api_paddle_cuda_is_available: + +is_available +------------------------------- + +.. py:function:: paddle.cuda.is_available() + +检查当前环境中是否有任何支持的设备可用。 + +该函数检查 Paddle 是否编译了至少一种加速器支持(如 CUDA、XPU、CustomDevice 等), +以及当前系统是否有至少一个该类型的设备可用。 + +如果有任何支持的设备可用,则返回 True,否则返回 False。 + +返回 +::::::::: +bool: 如果有至少一个可用设备(GPU/XPU/CustomDevice)则返回 True,否则返回 False。 + + +代码示例 +:::::::::::: +COPY-FROM: paddle.cuda.is_available \ No newline at end of file diff --git a/docs/api/paddle/cuda/is_current_stream_capturing_cn.rst b/docs/api/paddle/cuda/is_current_stream_capturing_cn.rst new file mode 100644 index 00000000000..2227cf54ae4 --- /dev/null +++ b/docs/api/paddle/cuda/is_current_stream_capturing_cn.rst @@ -0,0 +1,16 @@ +.. _cn_api_paddle_cuda_is_current_stream_capturing: + +is_current_stream_capturing +------------------------------- + +.. py:function:: paddle.cuda.is_current_stream_capturing() + +检查当前设备流是否处于图形捕获状态。 + +返回 +::::::::: +bool: 如果当前流正在捕获则返回True,否则返回False。 + +代码示例 +:::::::::::: +COPY-FROM: paddle.cuda.is_current_stream_capturing \ No newline at end of file diff --git a/docs/api/paddle/cuda/manual_seed_all_cn.rst b/docs/api/paddle/cuda/manual_seed_all_cn.rst new file mode 100644 index 00000000000..19129986b81 --- /dev/null +++ b/docs/api/paddle/cuda/manual_seed_all_cn.rst @@ -0,0 +1,20 @@ +.. _cn_api_paddle_cuda_manual_seed_all: + +manual_seed_all +------------------------------- + +.. py:function:: paddle.cuda.manual_seed_all(seed) + +设置全局默认随机数生成器的种子值,用于管理随机数生成。 + +参数 +::::::::: +- **seed** (int) - 要设置的随机种子值 + +返回 +::::::::: +None + +代码示例 +:::::::::::: +COPY-FROM: paddle.cuda.manual_seed_all diff --git a/docs/api/paddle/cuda/set_rng_state_cn.rst b/docs/api/paddle/cuda/set_rng_state_cn.rst new file mode 100644 index 00000000000..0ed1ef5f1aa --- /dev/null +++ b/docs/api/paddle/cuda/set_rng_state_cn.rst @@ -0,0 +1,24 @@ +.. _cn_api_paddle_cuda_set_rng_state: + +set_rng_state +------------------------------- + +.. py:function:: paddle.cuda.set_rng_state(new_state, device=None) + +设置指定设备的随机数生成器状态。 + +参数 +::::::::: +- **new_state** (core.GeneratorState) - 要设置的RNG状态对象,通常从``get_rng_state()``获取 +- **device** (DeviceLike, 可选) - 要设置RNG状态的设备: + + - 如果不指定,则使用当前默认设备(由``paddle.framework._current_expected_place_()``返回) + - 可以是设备对象、整数设备ID或设备字符串 + +返回 +::::::::: +None + +代码示例 +::::::::: +COPY-FROM: paddle.cuda.set_rng_state \ No newline at end of file diff --git a/docs/api/paddle/cuda/synchronize_cn.rst b/docs/api/paddle/cuda/synchronize_cn.rst new file mode 100644 index 00000000000..6b480b0d104 --- /dev/null +++ b/docs/api/paddle/cuda/synchronize_cn.rst @@ -0,0 +1,24 @@ +.. _cn_api_paddle_cuda_synchronize: + +synchronize + +.. py:function:: paddle.cuda.synchronize(device=None) + +该功能用于同步指定 CUDA 设备上的计算流,确保所有在该设备上提交的计算任务执行完成。 + +参数 +::::::::: + • device (int | str | CUDAPlace | CustomPlace | None, optional) – 指定需要同步的设备。 + • None:同步当前设备上的计算流。 + • int:设备索引,例如 0 表示 cuda:0。 + • str:设备字符串,例如 'cuda:0' 或 'gpu:0'。 + • CUDAPlace:Paddle 的 CUDAPlace 对象。 + • CustomPlace:Paddle 的自定义设备 Place 对象。 + +返回 +::::::::: +无。 + +代码示例 +::::::::: +COPY-FROM: paddle.cuda.synchronize \ No newline at end of file diff --git a/docs/api/paddle/device/Overview_cn.rst b/docs/api/paddle/device/Overview_cn.rst index c91a5ddf43b..9e099b20291 100644 --- a/docs/api/paddle/device/Overview_cn.rst +++ b/docs/api/paddle/device/Overview_cn.rst @@ -32,6 +32,11 @@ paddle.device 目录下包含 cuda 目录和 xpu 目录, cuda 目录中存放 " :ref:`get_cudnn_version ` ", "获得 cudnn 的版本" " :ref:`set_device ` ", "指定 OP 运行的全局设备" " :ref:`get_device ` ", "获得 OP 运行的全局设备" + " :ref:`get_device_properties ` ", "获取设备属性信息" + " :ref:`is_available ` ", "检查设备是否可用" + " :ref:`get_rng_state ` ", "获取随机数生成器状态" + " :ref:`manual_seed_all ` ", "设置全局随机种子" + " :ref:`set_rng_state ` ", "设置随机数生成器状态" .. _cn_device_compile: @@ -88,6 +93,7 @@ Stream 与 Event 相关 API " :ref:`stream_guard ` ", "切换当前的 stream 为输入指定的 stream,该 API 目前仅支持动态图模式" " :ref:`device_guard ` ", "切换当前的 device 为输入指定的 device,该 API 目前仅支持动态图模式" " :ref:`synchronize ` ", "等待给定的设备上的计算完成" + " :ref:`is_current_stream_capturing ` ", "检查当前流是否处于捕获状态" .. _cn_device_cuda: diff --git a/docs/api/paddle/device/get_device_properties_cn.rst b/docs/api/paddle/device/get_device_properties_cn.rst new file mode 100644 index 00000000000..6fd5ddb31f4 --- /dev/null +++ b/docs/api/paddle/device/get_device_properties_cn.rst @@ -0,0 +1,25 @@ +.. _cn_api_paddle_device_get_device_properties: + +get_device_properties +------------------------------- + +.. py:function:: paddle.device.get_device_properties(device=None) + +获取CUDA设备的属性信息。 + +参数 +::::::::: +- **device** (int | str | paddle.CUDAPlace | paddle.CustomPlace | None, 可选) - 要查询的目标设备: + + - None: 使用当前设备 + - int: 设备索引 (例如: 0 -> 'gpu:0') + - str: 设备字符串 (例如: "cuda:0", "gpu:1") + - CUDAPlace 或 CustomPlace: Paddle设备对象 + +返回 +::::::::: +DeviceProperties: 包含设备属性的对象,如名称、总内存、计算能力和多处理器数量等。 + +代码示例 +:::::::::::: +COPY-FROM: paddle.device.get_device_properties \ No newline at end of file diff --git a/docs/api/paddle/device/get_rng_state_cn.rst b/docs/api/paddle/device/get_rng_state_cn.rst new file mode 100644 index 00000000000..26f84986e67 --- /dev/null +++ b/docs/api/paddle/device/get_rng_state_cn.rst @@ -0,0 +1,23 @@ +.. _cn_api_paddle_device_get_rng_state: + +get_rng_state +------------------------------- + +.. py:function:: paddle.device.get_rng_state(device=None) + +返回指定设备的随机数生成器状态,以GeneratorState形式表示。 + +参数 +::::::::: +- **device** (DeviceLike, 可选) - 要获取RNG状态的设备: + + - 如果不指定,则使用当前默认设备(由paddle.framework._current_expected_place_()返回) + - 可以是设备对象、整数设备ID或设备字符串 + +返回 +::::::::: +core.GeneratorState: 指定设备的当前RNG状态,以GeneratorState形式表示。 + +代码示例 +:::::::::::: +COPY-FROM: paddle.device.get_rng_state diff --git a/docs/api/paddle/device/is_available_cn.rst b/docs/api/paddle/device/is_available_cn.rst new file mode 100644 index 00000000000..8cc39a04a93 --- /dev/null +++ b/docs/api/paddle/device/is_available_cn.rst @@ -0,0 +1,21 @@ +.. _cn_api_paddle_device_is_available: + +is_available +------------------------------- + +.. py:function:: paddle.device.is_available() + +检查当前环境中是否有任何支持的设备可用。 + +该函数检查 Paddle 是否编译了至少一种加速器支持(如 CUDA、XPU、CustomDevice 等), +以及当前系统是否有至少一个该类型的设备可用。 + +如果有任何支持的设备可用,则返回 True,否则返回 False。 + +返回 +::::::::: +bool: 如果有至少一个可用设备(GPU/XPU/CustomDevice)则返回 True,否则返回 False。 + +代码示例 +:::::::::::: +COPY-FROM: paddle.device.is_available \ No newline at end of file diff --git a/docs/api/paddle/device/is_current_stream_capturing_cn.rst b/docs/api/paddle/device/is_current_stream_capturing_cn.rst new file mode 100644 index 00000000000..1aae038d557 --- /dev/null +++ b/docs/api/paddle/device/is_current_stream_capturing_cn.rst @@ -0,0 +1,16 @@ +.. _cn_api_paddle_device_is_current_stream_capturing: + +is_current_stream_capturing +------------------------------- + +.. py:function:: paddle.device.is_current_stream_capturing() + +检查当前设备流是否处于图形捕获状态。 + +返回 +::::::::: +bool: 如果当前流正在捕获则返回True,否则返回False。 + +代码示例 +:::::::::::: +COPY-FROM: paddle.device.is_current_stream_capturing \ No newline at end of file diff --git a/docs/api/paddle/device/manual_seed_all_cn.rst b/docs/api/paddle/device/manual_seed_all_cn.rst new file mode 100644 index 00000000000..b186afd2591 --- /dev/null +++ b/docs/api/paddle/device/manual_seed_all_cn.rst @@ -0,0 +1,20 @@ +.. _cn_api_paddle_device_manual_seed_all: + +manual_seed_all +------------------------------- + +.. py:function:: paddle.device.manual_seed_all(seed) + +设置全局默认随机数生成器的种子值,用于管理所有设备的随机数生成。 + +参数 +::::::::: +- **seed** (int) - 要设置的随机种子值 + +返回 +::::::::: +None + +代码示例 +:::::::::::: +COPY-FROM: paddle.device.manual_seed_all \ No newline at end of file diff --git a/docs/api/paddle/device/set_rng_state_cn.rst b/docs/api/paddle/device/set_rng_state_cn.rst new file mode 100644 index 00000000000..7550d6ee303 --- /dev/null +++ b/docs/api/paddle/device/set_rng_state_cn.rst @@ -0,0 +1,24 @@ +.. _cn_api_paddle_device_set_rng_state: + +set_rng_state +------------------------------- + +.. py:function:: paddle.device.set_rng_state(new_state, device=None) + +设置指定设备的随机数生成器状态。 + +参数 +::::::::: +- **new_state** (core.GeneratorState) - 要设置的RNG状态对象,通常从``get_rng_state()``获取 +- **device** (DeviceLike, 可选) - 要设置RNG状态的设备: + + - 如果不指定,则使用当前默认设备(由``paddle.framework._current_expected_place_()``返回) + - 可以是设备对象、整数设备ID或设备字符串 + +返回 +::::::::: +None + +代码示例 +::::::::: +COPY-FROM: paddle.device.set_rng_state \ No newline at end of file diff --git a/docs/api/paddle/get_default_device_cn.rst b/docs/api/paddle/get_default_device_cn.rst new file mode 100644 index 00000000000..e6ca4143e08 --- /dev/null +++ b/docs/api/paddle/get_default_device_cn.rst @@ -0,0 +1,29 @@ +.. _cn_api_paddle_get_default_device: + +get_default_device +------------------------------- + +.. py:function:: paddle.get_default_device() + +获取程序当前运行的全局设备信息。 + +返回一个表示当前设备的字符串,格式可能是: +- 'cpu' +- 'gpu:x' (CUDA设备) +- 'xpu:x' (XPU设备) +- 'npu:x' (NPU设备) + +如果全局设备未明确设置,将根据以下规则返回: +- 当CUDA可用时返回'gpu:x' +- 当CUDA不可用时返回'cpu' + +返回 +::::::::: +str: 表示当前设备的字符串 + +代码示例 +::::::::: +.. code-block:: python + + >>> import paddle + >>> device = paddle.get_default_device() \ No newline at end of file diff --git a/docs/api/paddle/get_device_module_cn.rst b/docs/api/paddle/get_device_module_cn.rst new file mode 100644 index 00000000000..9262e9f4e68 --- /dev/null +++ b/docs/api/paddle/get_device_module_cn.rst @@ -0,0 +1,33 @@ +.. _cn_api_paddle_get_device_module: + +get_device_module +------------------------------- + +.. py:function:: paddle.get_device_module(device=None) + +获取指定设备对应的Paddle模块。 + +参数 +::::::::: +- **device** (_CustomPlaceLike, 可选) - 要查询的设备,可以是以下类型之一: + + - paddle.Place对象 (例如 paddle.CUDAPlace(0)) + - 字符串 (例如 "gpu:0", "xpu", "npu") + - 整数 (设备索引,例如 0 -> "gpu:0") + - None (使用当前预期设备) + +返回 +::::::::: +module: 对应的Paddle设备模块 (例如 paddle.cuda, paddle.device.xpu) + +异常 +::::::::: +- RuntimeError: 如果设备类型是CPU(Paddle不暴露`paddle.cpu`模块)或找不到匹配的设备模块 + +代码示例 +::::::::: +.. code-block:: python + + >>> import paddle + >>> paddle.get_device_module("gpu:0") + \ No newline at end of file