Skip to content

Conversation

Gasoonjia
Copy link
Contributor

Summary:
This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:

  1. the dim order of input and output should be same.
  2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
  3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated op_abs in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: D55227304

Copy link

pytorch-bot bot commented Mar 24, 2024

🔗 Helpful Links

🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/2637

Note: Links to docs will display an error until the docs builds have been completed.

✅ No Failures

As of commit 83fec01 with merge base 61ddee5 (image):
💚 Looks good so far! There are no failures yet. 💚

This comment was automatically generated by Dr. CI and updates every 15 minutes.

@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Mar 24, 2024
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Jul 15, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Jul 15, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: D55227304
Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Jul 22, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Jul 22, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Jul 29, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Jul 30, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 1, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 1, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 1, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 2, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 2, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Reviewed By: digantdesai, larryliu0820

Differential Revision: D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 5, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 5, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Reviewed By: digantdesai, larryliu0820

Differential Revision: D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 6, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Reviewed By: digantdesai, larryliu0820

Differential Revision: D55227304
Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 6, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Reviewed By: digantdesai, larryliu0820

Differential Revision: D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 6, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Reviewed By: digantdesai, larryliu0820

Differential Revision: D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia pushed a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 6, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: https://internalfb.com/D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 20, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Reviewed By: digantdesai, larryliu0820

Differential Revision: D55227304
Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 20, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Reviewed By: digantdesai, larryliu0820

Differential Revision: D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

1 similar comment
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Aug 20, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Reviewed By: digantdesai, larryliu0820

Differential Revision: D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

Gasoonjia added a commit to Gasoonjia/executorch-1 that referenced this pull request Sep 3, 2024
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: D55227304
Summary:
Pull Request resolved: pytorch#2637

This diff introduces dim order sanity check utils, as well as dim-order related test to operator tests, to help our system maintain its correctness when introducing new dim order ([0, 2, 3, 1]) which we never support before. The goal is checking whether or not every operator support its input's memory format, and using related tests for regular tests.

The high levels of sanity check and test will be:
1. the dim order of input and output should be same.
2. the dim order of all input tensors should be same, unless operaotr-specific requirement for some input (e.g. some operator may request some input have to be contiguous, although I haven't found the actual example yet.)
3. make the operator support as much dim order as possible (e,g, if a operator can support both contiguous and channels last, then the sanity check has to make the both input valid.)

I also updated `op_abs` in this diff to demonstrate how the sanity check as well as tests will be inserted.

Differential Revision: D55227304
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D55227304

@facebook-github-bot facebook-github-bot merged commit a4092c5 into pytorch:main Sep 3, 2024
36 of 38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants