Skip to content
This repository has been archived by the owner on Jan 24, 2024. It is now read-only.

Refactor op test on remainder, uniform and gaussian #1509

Merged
merged 1 commit into from
Jun 7, 2023

Conversation

FisherWY
Copy link
Contributor

@FisherWY FisherWY commented Jun 6, 2023

使用新单测重写了remainder, uniform_random, gaussian_random的单测

Remainder

序号 算子名 单测文件
10 remainder test_remainder_op.py

算子类型

  • ElementWise:输入张量索引和输出张量索引之间存在一对一的对应关系
  • Broadcast:输入张量索引和输出张量索引之间存在一对多的对应关系
  • Injective:单射算子,可以将一个输出 axis 映射到一个输入 axis
  • Reduction:输入张量索引和输出张量索引之间存在多对一的对应关系
  • OutFusible:复杂算子,仍然可以将一对一的算子融合到其输出中。
  • kNonFusible:无法融合的算子

OpMapper

  • 该算子是否 OpMapper? 如果是,请贴出在 Paddle 中对应的 OpMaker 代码路径。(给出 Github 链接更好)

Test Cases Checklist

张量维度

  • 1D 张量
  • 2D 张量
  • 3D 张量
  • 4D 张量

special shape

挑选 2D/3D/4D 张量中的一个,测试下面的特殊情况。

  • 其中一个维度为 1
  • 其中一个维度小于 1024
  • 其中一个维度大于 1024
  • 向量的所有维度都是 1

张量数据类型

  • int32
  • int64
  • float16
  • float32
  • float64

广播

  • 这个算子是否支持广播?
  • 广播的测试样例

算子属性

算子属性的测试用例。

  • 属性:属性类型-可取值
  • 使用 OpTestHelper 测试上述属性的笛卡尔积组合

备注

Uniform_random & Gaussian_random

序号 算子名 单测文件
41 gaussian_random test_gaussian_random_op.py
114 uniform_random test_ uniform_random_op.py

算子类型

  • ElementWise:输入张量索引和输出张量索引之间存在一对一的对应关系
  • Broadcast:输入张量索引和输出张量索引之间存在一对多的对应关系
  • Injective:单射算子,可以将一个输出 axis 映射到一个输入 axis
  • Reduction:输入张量索引和输出张量索引之间存在多对一的对应关系
  • OutFusible:复杂算子,仍然可以将一对一的算子融合到其输出中。
  • kNonFusible:无法融合的算子

OpMapper

  • 该算子是否 OpMapper? 如果是,请贴出在 Paddle 中对应的 OpMaker 代码路径。(给出 Github 链接更好)

Test Cases Checklist

张量维度

  • 1D 张量
  • 2D 张量
  • 3D 张量
  • 4D 张量

special shape

挑选 2D/3D/4D 张量中的一个,测试下面的特殊情况。

  • 其中一个维度为 1
  • 其中一个维度小于 1024
  • 其中一个维度大于 1024
  • 向量的所有维度都是 1

张量数据类型

  • int32
  • int64
  • float16
  • float32
  • float64

广播

  • 这个算子是否支持广播?
  • 广播的测试样例

算子属性

算子属性的测试用例。

  • 属性:属性类型-可取值
    • uniform_random: min
    • uniform_random: max
    • uniform_random & gaussian_random: seed
    • gaussian_random: mean
    • gaussian_random: std
  • 使用 OpTestHelper 测试上述属性的笛卡尔积组合

备注

  • Paddle的随机数算子使用了thrust库实现,其offsetGPUContext中获取,目前暂时无法严格对齐

@paddle-bot
Copy link

paddle-bot bot commented Jun 6, 2023

Thanks for your contribution!

Copy link
Collaborator

@thisjiang thisjiang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@thisjiang thisjiang merged commit df023dd into PaddlePaddle:develop Jun 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants