Skip to content

Commit

Permalink
【Hackathon 5th No.46】API转换 84-102 (PaddlePaddle#6281)
Browse files Browse the repository at this point in the history
* Add api_difference docs

* Fix

* Fix

* Fix

* Fix
  • Loading branch information
co63oc authored Nov 6, 2023
1 parent cab88b7 commit 108aa37
Show file tree
Hide file tree
Showing 8 changed files with 87 additions and 42 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## [torch 参数更多]torch.distributed.all_gather
## [参数不一致]torch.distributed.all_gather

### [torch.distributed.all_gather](https://pytorch.org/docs/stable/distributed.html#torch.distributed.all_gather)

Expand All @@ -9,16 +9,16 @@ torch.distributed.all_gather(tensor_list, tensor, group=None, async_op=False)
### [paddle.distributed.all_gather](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/all_gather_cn.html)

```python
paddle.distributed.all_gather(tensor_list, tensor, group=0)
paddle.distributed.all_gather(tensor_list, tensor, group=None, sync_op=True)
```

Pytorch 相比 Paddle 支持更多其他参数,具体如下:
其中 PyTorch 和 Paddle 功能一致,参数用法不一致,具体如下:

### 参数映射

| PyTorch | PaddlePaddle | 备注 |
| ----------- | ------------ | --------------------------------------------- |
| tensor_list | tensor_list | 操作的输出 Tensor 列表。 |
| tensor | tensor | 操作的输入 Tensor。 |
| group | group | 工作的进程组编号。 |
| async_op | - | 是否异步操作,Paddle 无此参数,暂无转写方式|
| PyTorch | PaddlePaddle | 备注 |
| ----------- | ------------ | --------------------------------------------------------------- |
| tensor_list | tensor_list | 操作的输出 Tensor 列表。 |
| tensor | tensor | 操作的输入 Tensor。 |
| group | group | 工作的进程组编号。 |
| async_op | sync_op | torch 为是否异步操作,Paddle 为是否同步操作,转写方式取反即可|
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## [torch 参数更多]torch.distributed.all_reduce
## [参数不一致]torch.distributed.all_reduce

### [torch.distributed.all_reduce](https://pytorch.org/docs/stable/distributed.html#torch.distributed.all_reduce)

Expand All @@ -9,16 +9,16 @@ torch.distributed.all_reduce(tensor, op=<torch.distributed.distributed_c10d.Redu
### [paddle.distributed.all_reduce](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/all_reduce_cn.html)

```python
paddle.distributed.all_reduce(tensor, op=ReduceOp.SUM, group=0)
paddle.distributed.all_reduce(tensor, op=ReduceOp.SUM, group=None, sync_op=True)
```

Pytorch 相比 Paddle 支持更多其他参数,具体如下:
其中 PyTorch 和 Paddle 功能一致,参数用法不一致,具体如下:

### 参数映射

| PyTorch | PaddlePaddle | 备注 |
| -------- | ------------ | --------------------------------------------- |
| tensor | tensor | 操作的输入 Tensor。 |
| op | op | 归约的具体操作。 |
| group | group | 工作的进程组编号。 |
| PyTorch | PaddlePaddle | 备注 |
| -------- | ------------ | --------------------------------------------------------------- |
| tensor | tensor | 操作的输入 Tensor。 |
| op | op | 归约的具体操作。 |
| group | group | 工作的进程组编号。 |
| async_op | sync_op | torch 为是否异步操作,Paddle 为是否同步操作,转写方式取反即可。 |
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## [torch 参数更多]torch.distributed.all_to_all
## [参数不一致]torch.distributed.all_to_all

### [torch.distributed.all_to_all](https://pytorch.org/docs/stable/distributed.html#torch.distributed.all_to_all)

Expand All @@ -9,17 +9,16 @@ torch.distributed.all_to_all(output_tensor_list, input_tensor_list, group=None,
### [paddle.distributed.alltoall](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/alltoall_cn.html)

```python
paddle.distributed.alltoall(in_tensor_list, out_tensor_list, group=None, use_calc_stream=True)
paddle.distributed.alltoall(in_tensor_list, out_tensor_list, group=None, sync_op=True)
```

Pytorch 相比 Paddle 支持更多其他参数,具体如下:
其中 PyTorch 和 Paddle 功能一致,参数用法不一致,具体如下:

### 参数映射

| PyTorch | PaddlePaddle | 备注 |
| ------------------ | --------------- | ----------------------------------------------------------------- |
| output_tensor_list | out_tensor_list | 包含所有输出 Tensors 的一个列表,仅参数名不一致。 |
| input_tensor_list | in_tensor_list | 包含所有输入 Tensors 的一个列表,仅参数名不一致。 |
| group | group | new_group 返回的 Group 实例,或者设置为 None 表示默认地全局组。 |
| async_op | - | 是否异步操作,Paddle 无此参数,暂无转写方式。 |
| - | use_calc_stream | 标识使用计算流还是通信流,PyTorch 无此参数,Paddle 保持默认即可。 |
| PyTorch | PaddlePaddle | 备注 |
| ------------------ | --------------- | --------------------------------------------------------------- |
| output_tensor_list | out_tensor_list | 包含所有输出 Tensors 的一个列表,仅参数名不一致。 |
| input_tensor_list | in_tensor_list | 包含所有输入 Tensors 的一个列表,仅参数名不一致。 |
| group | group | new_group 返回的 Group 实例,或者设置为 None 表示默认地全局组。 |
| async_op | sync_op | torch 为是否异步操作,Paddle 为是否同步操作,转写方式取反即可。 |
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ torch.distributed.barrier(group=None, async_op=False, device_ids=None)
### [paddle.distributed.barrier](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/barrier_cn.html)

```python
paddle.distributed.barrier(group=0)
paddle.distributed.barrier(group=None)
```

Pytorch 相比 Paddle 支持更多其他参数,具体如下:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## [torch 参数更多]torch.distributed.broadcast
## [参数不一致]torch.distributed.broadcast

### [torch.distributed.broadcast](https://pytorch.org/docs/stable/distributed.html#torch.distributed.broadcast)

Expand All @@ -9,10 +9,10 @@ torch.distributed.broadcast(tensor, src, group=None, async_op=False)
### [paddle.distributed.broadcast](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/broadcast_cn.html)

```python
paddle.distributed.broadcast(tensor, src, group=0)
paddle.distributed.broadcast(tensor, src, group=None, sync_op=True)
```

Pytorch 相比 Paddle 支持更多其他参数,具体如下:
其中 PyTorch 和 Paddle 功能一致,参数用法不一致,具体如下:

### 参数映射

Expand All @@ -21,4 +21,4 @@ Pytorch 相比 Paddle 支持更多其他参数,具体如下:
| tensor | tensor | 如果当前进程编号是源,那么这个 Tensor 变量将被发送给其他进程,否则这个 Tensor 将接收源发送过来的数据。 |
| src | src | 发送源的进程编号。 |
| group | group | 工作的进程组编号。 |
| async_op | - | 是否异步操作,Paddle 无此参数,暂无转写方式。 |
| async_op | sync_op | torch 为是否异步操作,Paddle 为是否同步操作,转写方式取反即可。 |
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
## [参数不一致]torch.distributed.gather

### [torch.distributed.gather](https://pytorch.org/docs/stable/distributed.html#torch.distributed.gather)

```python
torch.distributed.gather(tensor, gather_list=None, dst=0, group=None, async_op=False)
```

### [paddle.distributed.gather](https://github.com/PaddlePaddle/Paddle/blob/c8ccc9b154632ef41ade1b8e97b87d54fde7e8f8/python/paddle/distributed/communication/gather.py#L20C71-L20C71)

```python
paddle.distributed.gather(tensor, gather_list=None, dst=0, group=None, sync_op=True)
```

其中 PyTorch 和 Paddle 功能一致,参数用法不一致,具体如下:

### 参数映射

| PyTorch | PaddlePaddle | 备注 |
| ----------- | ------------ | --------------------------------------------------------------- |
| tensor | tensor | 操作的输入 Tensor。 |
| gather_list | gather_list | 操作的输出 Tensor 列表。 |
| dst | dst | 表示目标进程的 rank。 |
| group | group | 工作的进程组编号。 |
| async_op | sync_op | torch 为是否异步操作,Paddle 为是否同步操作,转写方式取反即可。 |
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
## [参数完全一致]torch.distributed.get_backend

### [torch.distributed.get_backend](https://pytorch.org/docs/stable/distributed.html#torch.distributed.get_backend)

```python
torch.distributed.get_backend(group=None)
```

### [paddle.distributed.get_backend](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/get_backend_cn.html#get-backend)

```python
paddle.distributed.get_backend(group=None)
```

其中功能一致, 参数完全一致,具体如下:

### 参数映射

| PyTorch | PaddlePaddle | 备注 |
| ------- | ------------ | ---- |
| group | group | 指定的通信组。 |
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## [torch 参数更多]torch.distributed.scatter
## [参数不一致]torch.distributed.scatter

### [torch.distributed.scatter](https://pytorch.org/docs/stable/distributed.html#torch.distributed.scatter)

Expand All @@ -9,17 +9,17 @@ torch.distributed.scatter(tensor, scatter_list=None, src=0, group=None, async_op
### [paddle.distributed.scatter](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/distributed/scatter_cn.html)

```python
paddle.distributed.scatter(tensor, tensor_list=None, src=0, group=0)
paddle.distributed.scatter(tensor, tensor_list=None, src=0, group=None, sync_op=True)
```

Pytorch 相比 Paddle 支持更多其他参数,具体如下:
其中 PyTorch 和 Paddle 功能一致,参数用法不一致,具体如下:

### 参数映射

| PyTorch | PaddlePaddle | 备注 |
| ------------ | ------------ | --------------------------------------------- |
| tensor | tensor | 操作的输出 Tensor。 |
| scatter_list | tensor_list | 操作的输入 Tensor 列表,仅参数名不一致。 |
| src | src | 操作的源进程号。 |
| group | group | 工作的进程组编号。 |
| async_op | - | 是否异步操作,Paddle 无此参数,暂无转写方式|
| PyTorch | PaddlePaddle | 备注 |
| ------------ | ------------ | --------------------------------------------------------------- |
| tensor | tensor | 操作的输出 Tensor。 |
| scatter_list | tensor_list | 操作的输入 Tensor 列表,仅参数名不一致。 |
| src | src | 操作的源进程号。 |
| group | group | 工作的进程组编号。 |
| async_op | sync_op | torch 为是否异步操作,Paddle 为是否同步操作,转写方式取反即可|

0 comments on commit 108aa37

Please sign in to comment.