8000 Update oneDNN submodule to v3.3.4 by Xia-Weiwen · Pull Request #117007 · pytorch/pytorch · GitHub
[go: up one dir, main page]

Skip to content

Update oneDNN submodule to v3.3.4 #117007

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

Xia-Weiwen
Copy link
Collaborator
@Xia-Weiwen Xia-Weiwen commented Jan 9, 2024

As the title. For PyTorch release/2.2.
This update contains the fixes to the known issues brought by oneDNN v3.3.2 as we listed in #112700

For those issues, we have rerun validation with oneDNN v3.3.4, and results showed that regression has gone. The results are given below and compared with v3.1.1 (the oneDNN version in PyTorch before it was updated to v3.3.2).

  1. A performance regression with 5.8% perf drop from pytorch_stargan-train (see V2 Performance Signal Detected by TorchBench CI on '2.2.0.dev20231205+cu118' benchmark#2076 (comment))
    Validation results with this patch: Latency increased by 0.60%
Tested on an Intel(R) Xeon(R) Platinum 8358 CPU @ 2.60GHz instance (IceLake)
oneDNN v3.1.1
metrics-1484287.json
{
    "name": "cpu",
    "environ": {
        "pytorch_git_version": "6c8c5ad5eaf47a62fafbb4a2747198cbffbf1ff0"
    },
    "metrics": {
        "latency": 418.851717
    }
}
oneDNN v3.3.4
{
    "name": "cpu",
    "environ": {
        "pytorch_git_version": "6c8c5ad5eaf47a62fafbb4a2747198cbffbf1ff0"
    },
    "metrics": {
        "latency": 421.381313
    }
}
  1. Performance regression of FP32 rexnet_100 with Inductor, dynamic shape, multi-threads (see [inductor][cpu]rexnet100 dynamic FP32 multiple threads performance regression #115346 (comment))
    Validation results with this patch: Latency reduced by 3.23%
Tested on an Intel(R) Xeon(R) Platinum 8358 CPU @ 2.60GHz instance (IceLake)
oneDNN v3.1.1
(inductor speedup over eager mode) 2.876x
dev,name,batch_size,speedup,abs_latency,compilation_latency,compression_ratio,eager_peak_mem,dynamo_peak_mem,calls_captured,unique_graphs,graph_breaks,unique_graph_breaks
cpu,rexnet_100,128,2.875904,113.314765,18.455283,0.990437,1302.636134,1315.212902,351,1,0,0

oneDNN v3.3.4
(inductor speedup over eager mode) 3.003x
dev,name,batch_size,speedup,abs_latency,compilation_latency,compression_ratio,eager_peak_mem,dynamo_peak_mem,calls_captured,unique_graphs,graph_breaks,unique_graph_breaks
cpu,rexnet_100,128,3.003012,109.653012,91.547260,0.990048,1302.532506,1315.625370,351,1,0,0
  1. Performance regression of AMP hf_T5_generate and tinynet_a with Inductor, static shape, multi-threads (see [inductor][cpu]rexnet100 dynamic FP32 multiple threads performance regression #115346 (comment))
    Validation results with this patch: Latency reduced by 0.85%
Tested on an AWS spr metal instance
oneDNN v3.1.1
(inductor speedup over eager mode) 1.120x
dev,name,batch_size,speedup,abs_latency,compilation_latency,compression_ratio,eager_peak_mem,dynamo_peak_mem,calls_captured,unique_graphs,graph_breaks,unique_graph_breaks
cpu,hf_T5_generate,1,1.120018,1197.807729,205.905466,0.442803,125.179904,282.698957,10550,48,8,4
 
oneDNN v3.3.4
(inductor speedup over eager mode) 1.134x
dev,name,batch_size,speedup,abs_latency,compilation_latency,compression_ratio,eager_peak_mem,dynamo_peak_mem,calls_captured,unique_graphs,graph_breaks,unique_graph_breaks
cpu,hf_T5_generate,1,1.133594,1187.701514,205.855527,0.422012,128.405094,304.268493,10550,48,8,4

No other regression was found.

cc @gujinghui @PenghuiCheng @XiaobingSuper @jianyuh @jgong5 @mingfeima @sanchitintel @ashokei @jingxu10 @min-jean-cho @yanbing-j @Guobing-Chen

Copy link
pytorch-bot bot commented Jan 9, 2024

🔗 Helpful Links

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

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

✅ No Failures

As of commit 9c887f6 with merge base a8bd593 (image):
💚 Looks good so far! There are no failures yet. 💚

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

@pytorch-bot pytorch-bot bot added the topic: not user facing topic category label Jan 9, 2024
@github-actions github-actions bot added the module: mkldnn Related to Intel IDEEP or oneDNN (a.k.a. mkldnn) integration label Jan 9, 2024
@Xia-Weiwen Xia-Weiwen changed the title Update oneDNN to v3.3.4 Update oneDNN submodule to v3.3.4 Jan 14, 2024
@Xia-Weiwen Xia-Weiwen marked this pull request as ready for review February 19, 2024 06:02
@atalman
Copy link
Contributor
atalman commented Feb 20, 2024

Hi @Xia-Weiwen normally we accept only fixes to regressions and critical fixes for patch release. Submodule update can introduce other breakages. Cherry-pick criteria specified here: #119295 (comment)

Please post this PR to main instead. We should be able to introduce this to release 2.3

@Xia-Weiwen
Copy link
Collaborator Author

Hi @Xia-Weiwen normally we accept only fixes to regressions and critical fixes for patch release. Submodule update can introduce other breakages. Cherry-pick criteria specified here: #119295 (comment)

Please post this PR to main instead. We should be able to introduce this to release 2.3

Got it. Thanks.

@Xia-Weiwen
Copy link
Collaborator Author

Hi @atalman. I thought in previous discussions, we decided to update oneDNN in PyTorch 2.2 patch release to fix the regressions caused by oneDNN v3.3.2. Just for double-check, you meant the fixes were not needed and better to have them in PyTorch 2.3. Is that correct?
If that is the case, we may close this PR because we will probably update oneDNN to a newer version for PyTorch 2.3, which is not decided yet.
Thanks!

@Xia-Weiwen
Copy link
Collaborator Author

Close as we won't upgrade oneDNN for PyTorch 2.2. Upgrade it for PT 2.3 instead.

@Xia-Weiwen Xia-Weiwen closed this Mar 1, 2024
@Xia-Weiwen Xia-Weiwen deleted the rls2.2-onednn-v3.3.4 branch March 2, 2024 02:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
module: mkldnn Related to Intel IDEEP or oneDNN (a.k.a. mkldnn) integration open source topic: not user facing topic category
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants
0