Reset Dynamo at Setup for all tests - #9561

Merged
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo
Mar 25, 2025
Merged

Reset Dynamo at Setup for all tests#9561
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo

Conversation

@mcr229

Copy link
Copy Markdown
Contributor

https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423

There seems to be some CI issues with:

torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing

To help resolve this we reset dynamo at setup for all unittests. Let's see if this helps

@pytorch-bot

pytorch-botBot commented Mar 24, 2025

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 1 New Failure, 1 Pending

As of commit 5417019 with merge base 5c5b84e (image):

NEW FAILURE - The following job has failed:

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

@facebook-github-botfacebook-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, 2025
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mcr229
mcr229 requested review from GregoryComer and digantdesai and removed request for digantdesaiMarch 24, 2025 23:59
@digantdesai

Copy link
Copy Markdown
Contributor

any side effects from dynamo? Also I guess stuff like inheritance or decorator is just confusing?

@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mergennachin

Copy link
Copy Markdown
Contributor

why is this recompiling in the first place?

@mcr229

mcr229 commented Mar 25, 2025

Copy link
Copy Markdown
ContributorAuthor

why is this recompiling in the first place?

We have a for loop exporting the same model for different configurations multiple times. I think the issue lies there where we are "re-exporting" the same model. So it seems like we need to reset dynamo after each export. It is strange though because in each loop we are technically initializing a new module, I'm guessing there is some internal cache in dynamo that recognizes its the same model structure, and tries to recompile instead.

@GregoryComerGregoryComer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

@mergennachin

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

@tugsbayasgalan

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

I am not really sure, but i know torchdynamo test cases do the same thing due to some caching stuff. Maybe cc: @anijain2305 knows better

@mcr229

Copy link
Copy Markdown
ContributorAuthor

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

yea i was thinking that, but i didn't want to add another abstraction we maintain just for _dynamo.reset(). I guess in the future could be useful.

@mcr229

Copy link
Copy Markdown
ContributorAuthor

trunk / test-models-macos (llama2, xnnpack-quantization-delegation) / macos-job (push)

seems to be flaky and have intermittent failures. This PR likely doesn't have anything to do with that failure. Will follow up on that flaky test after landing this PR.

@mcr229
mcr229 merged commit f7e6dbf into pytorch:mainMar 25, 2025
pytorchmergebot pushed a commit to pytorch/pytorch that referenced this pull request Apr 1, 2025
kirklandsign pushed a commit that referenced this pull request Apr 11, 2025
https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423
There seems to be some CI issues with:
```
torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing
```
To help resolve this we reset dynamo at setup for all unittests. Let's
see if this helps
amathewc pushed a commit to amathewc/pytorch that referenced this pull request Apr 17, 2025
huydhn pushed a commit to pytorch/pytorch that referenced this pull request May 16, 2025
atalman pushed a commit to pytorch/pytorch that referenced this pull request May 21, 2025
…53750)
* Update ExecuTorch pin to latest viable/strict 3/28/2025 (#150308)
From latest viable/strict: https://hud.pytorch.org/hud/pytorch/executorch/viable%2Fstrict/1?per_page=50Fixes#144480
This commit has important CI stability fixes, such as pytorch/executorch#9561 and pytorch/executorch#9634
Pull Request resolved: #150308
Approved by: https://github.com/jathu, https://github.com/malfet
* Use new hash from #150722
* Update executorch.txt
---------
Co-authored-by: Mergen Nachin <mnachin@meta.com>
@mcr229
mcr229 deleted the reset_dynamo branch July 25, 2025 22:43
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/trunkCLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.topic: not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mcr229@facebook-github-bot@digantdesai@mergennachin@tugsbayasgalan@GregoryComer
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Reset Dynamo at Setup for all tests - #9561

Merged
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo
Mar 25, 2025
Merged

Reset Dynamo at Setup for all tests#9561
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo

Conversation

@mcr229

Copy link
Copy Markdown
Contributor

https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423

There seems to be some CI issues with:

torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing

To help resolve this we reset dynamo at setup for all unittests. Let's see if this helps

@pytorch-bot

pytorch-botBot commented Mar 24, 2025

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 1 New Failure, 1 Pending

As of commit 5417019 with merge base 5c5b84e (image):

NEW FAILURE - The following job has failed:

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

@facebook-github-botfacebook-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, 2025
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mcr229
mcr229 requested review from GregoryComer and digantdesai and removed request for digantdesaiMarch 24, 2025 23:59
@digantdesai

Copy link
Copy Markdown
Contributor

any side effects from dynamo? Also I guess stuff like inheritance or decorator is just confusing?

@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mergennachin

Copy link
Copy Markdown
Contributor

why is this recompiling in the first place?

@mcr229

mcr229 commented Mar 25, 2025

Copy link
Copy Markdown
ContributorAuthor

why is this recompiling in the first place?

We have a for loop exporting the same model for different configurations multiple times. I think the issue lies there where we are "re-exporting" the same model. So it seems like we need to reset dynamo after each export. It is strange though because in each loop we are technically initializing a new module, I'm guessing there is some internal cache in dynamo that recognizes its the same model structure, and tries to recompile instead.

@GregoryComerGregoryComer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

@mergennachin

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

@tugsbayasgalan

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

I am not really sure, but i know torchdynamo test cases do the same thing due to some caching stuff. Maybe cc: @anijain2305 knows better

@mcr229

Copy link
Copy Markdown
ContributorAuthor

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

yea i was thinking that, but i didn't want to add another abstraction we maintain just for _dynamo.reset(). I guess in the future could be useful.

@mcr229

Copy link
Copy Markdown
ContributorAuthor

trunk / test-models-macos (llama2, xnnpack-quantization-delegation) / macos-job (push)

seems to be flaky and have intermittent failures. This PR likely doesn't have anything to do with that failure. Will follow up on that flaky test after landing this PR.

@mcr229
mcr229 merged commit f7e6dbf into pytorch:mainMar 25, 2025
pytorchmergebot pushed a commit to pytorch/pytorch that referenced this pull request Apr 1, 2025
kirklandsign pushed a commit that referenced this pull request Apr 11, 2025
https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423
There seems to be some CI issues with:
```
torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing
```
To help resolve this we reset dynamo at setup for all unittests. Let's
see if this helps
amathewc pushed a commit to amathewc/pytorch that referenced this pull request Apr 17, 2025
huydhn pushed a commit to pytorch/pytorch that referenced this pull request May 16, 2025
atalman pushed a commit to pytorch/pytorch that referenced this pull request May 21, 2025
…53750)
* Update ExecuTorch pin to latest viable/strict 3/28/2025 (#150308)
From latest viable/strict: https://hud.pytorch.org/hud/pytorch/executorch/viable%2Fstrict/1?per_page=50Fixes#144480
This commit has important CI stability fixes, such as pytorch/executorch#9561 and pytorch/executorch#9634
Pull Request resolved: #150308
Approved by: https://github.com/jathu, https://github.com/malfet
* Use new hash from #150722
* Update executorch.txt
---------
Co-authored-by: Mergen Nachin <mnachin@meta.com>
@mcr229
mcr229 deleted the reset_dynamo branch July 25, 2025 22:43
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/trunkCLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.topic: not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mcr229@facebook-github-bot@digantdesai@mergennachin@tugsbayasgalan@GregoryComer
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Reset Dynamo at Setup for all tests - #9561

Merged
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo
Mar 25, 2025
Merged

Reset Dynamo at Setup for all tests#9561
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo

Conversation

@mcr229

Copy link
Copy Markdown
Contributor

https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423

There seems to be some CI issues with:

torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing

To help resolve this we reset dynamo at setup for all unittests. Let's see if this helps

@pytorch-bot

pytorch-botBot commented Mar 24, 2025

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 1 New Failure, 1 Pending

As of commit 5417019 with merge base 5c5b84e (image):

NEW FAILURE - The following job has failed:

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

@facebook-github-botfacebook-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, 2025
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mcr229
mcr229 requested review from GregoryComer and digantdesai and removed request for digantdesaiMarch 24, 2025 23:59
@digantdesai

Copy link
Copy Markdown
Contributor

any side effects from dynamo? Also I guess stuff like inheritance or decorator is just confusing?

@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mergennachin

Copy link
Copy Markdown
Contributor

why is this recompiling in the first place?

@mcr229

mcr229 commented Mar 25, 2025

Copy link
Copy Markdown
ContributorAuthor

why is this recompiling in the first place?

We have a for loop exporting the same model for different configurations multiple times. I think the issue lies there where we are "re-exporting" the same model. So it seems like we need to reset dynamo after each export. It is strange though because in each loop we are technically initializing a new module, I'm guessing there is some internal cache in dynamo that recognizes its the same model structure, and tries to recompile instead.

@GregoryComerGregoryComer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

@mergennachin

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

@tugsbayasgalan

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

I am not really sure, but i know torchdynamo test cases do the same thing due to some caching stuff. Maybe cc: @anijain2305 knows better

@mcr229

Copy link
Copy Markdown
ContributorAuthor

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

yea i was thinking that, but i didn't want to add another abstraction we maintain just for _dynamo.reset(). I guess in the future could be useful.

@mcr229

Copy link
Copy Markdown
ContributorAuthor

trunk / test-models-macos (llama2, xnnpack-quantization-delegation) / macos-job (push)

seems to be flaky and have intermittent failures. This PR likely doesn't have anything to do with that failure. Will follow up on that flaky test after landing this PR.

@mcr229
mcr229 merged commit f7e6dbf into pytorch:mainMar 25, 2025
pytorchmergebot pushed a commit to pytorch/pytorch that referenced this pull request Apr 1, 2025
kirklandsign pushed a commit that referenced this pull request Apr 11, 2025
https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423
There seems to be some CI issues with:
```
torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing
```
To help resolve this we reset dynamo at setup for all unittests. Let's
see if this helps
amathewc pushed a commit to amathewc/pytorch that referenced this pull request Apr 17, 2025
huydhn pushed a commit to pytorch/pytorch that referenced this pull request May 16, 2025
atalman pushed a commit to pytorch/pytorch that referenced this pull request May 21, 2025
…53750)
* Update ExecuTorch pin to latest viable/strict 3/28/2025 (#150308)
From latest viable/strict: https://hud.pytorch.org/hud/pytorch/executorch/viable%2Fstrict/1?per_page=50Fixes#144480
This commit has important CI stability fixes, such as pytorch/executorch#9561 and pytorch/executorch#9634
Pull Request resolved: #150308
Approved by: https://github.com/jathu, https://github.com/malfet
* Use new hash from #150722
* Update executorch.txt
---------
Co-authored-by: Mergen Nachin <mnachin@meta.com>
@mcr229
mcr229 deleted the reset_dynamo branch July 25, 2025 22:43
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/trunkCLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.topic: not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mcr229@facebook-github-bot@digantdesai@mergennachin@tugsbayasgalan@GregoryComer
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Reset Dynamo at Setup for all tests - #9561

Merged
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo
Mar 25, 2025
Merged

Reset Dynamo at Setup for all tests#9561
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo

Conversation

@mcr229

Copy link
Copy Markdown
Contributor

https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423

There seems to be some CI issues with:

torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing

To help resolve this we reset dynamo at setup for all unittests. Let's see if this helps

@pytorch-bot

pytorch-botBot commented Mar 24, 2025

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 1 New Failure, 1 Pending

As of commit 5417019 with merge base 5c5b84e (image):

NEW FAILURE - The following job has failed:

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

@facebook-github-botfacebook-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, 2025
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mcr229
mcr229 requested review from GregoryComer and digantdesai and removed request for digantdesaiMarch 24, 2025 23:59
@digantdesai

Copy link
Copy Markdown
Contributor

any side effects from dynamo? Also I guess stuff like inheritance or decorator is just confusing?

@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mergennachin

Copy link
Copy Markdown
Contributor

why is this recompiling in the first place?

@mcr229

mcr229 commented Mar 25, 2025

Copy link
Copy Markdown
ContributorAuthor

why is this recompiling in the first place?

We have a for loop exporting the same model for different configurations multiple times. I think the issue lies there where we are "re-exporting" the same model. So it seems like we need to reset dynamo after each export. It is strange though because in each loop we are technically initializing a new module, I'm guessing there is some internal cache in dynamo that recognizes its the same model structure, and tries to recompile instead.

@GregoryComerGregoryComer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

@mergennachin

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

@tugsbayasgalan

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

I am not really sure, but i know torchdynamo test cases do the same thing due to some caching stuff. Maybe cc: @anijain2305 knows better

@mcr229

Copy link
Copy Markdown
ContributorAuthor

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

yea i was thinking that, but i didn't want to add another abstraction we maintain just for _dynamo.reset(). I guess in the future could be useful.

@mcr229

Copy link
Copy Markdown
ContributorAuthor

trunk / test-models-macos (llama2, xnnpack-quantization-delegation) / macos-job (push)

seems to be flaky and have intermittent failures. This PR likely doesn't have anything to do with that failure. Will follow up on that flaky test after landing this PR.

@mcr229
mcr229 merged commit f7e6dbf into pytorch:mainMar 25, 2025
pytorchmergebot pushed a commit to pytorch/pytorch that referenced this pull request Apr 1, 2025
kirklandsign pushed a commit that referenced this pull request Apr 11, 2025
https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423
There seems to be some CI issues with:
```
torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing
```
To help resolve this we reset dynamo at setup for all unittests. Let's
see if this helps
amathewc pushed a commit to amathewc/pytorch that referenced this pull request Apr 17, 2025
huydhn pushed a commit to pytorch/pytorch that referenced this pull request May 16, 2025
atalman pushed a commit to pytorch/pytorch that referenced this pull request May 21, 2025
…53750)
* Update ExecuTorch pin to latest viable/strict 3/28/2025 (#150308)
From latest viable/strict: https://hud.pytorch.org/hud/pytorch/executorch/viable%2Fstrict/1?per_page=50Fixes#144480
This commit has important CI stability fixes, such as pytorch/executorch#9561 and pytorch/executorch#9634
Pull Request resolved: #150308
Approved by: https://github.com/jathu, https://github.com/malfet
* Use new hash from #150722
* Update executorch.txt
---------
Co-authored-by: Mergen Nachin <mnachin@meta.com>
@mcr229
mcr229 deleted the reset_dynamo branch July 25, 2025 22:43
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/trunkCLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.topic: not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mcr229@facebook-github-bot@digantdesai@mergennachin@tugsbayasgalan@GregoryComer
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Reset Dynamo at Setup for all tests - #9561

Merged
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo
Mar 25, 2025
Merged

Reset Dynamo at Setup for all tests#9561
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo

Conversation

@mcr229

Copy link
Copy Markdown
Contributor

https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423

There seems to be some CI issues with:

torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing

To help resolve this we reset dynamo at setup for all unittests. Let's see if this helps

@pytorch-bot

pytorch-botBot commented Mar 24, 2025

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 1 New Failure, 1 Pending

As of commit 5417019 with merge base 5c5b84e (image):

NEW FAILURE - The following job has failed:

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

@facebook-github-botfacebook-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, 2025
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mcr229
mcr229 requested review from GregoryComer and digantdesai and removed request for digantdesaiMarch 24, 2025 23:59
@digantdesai

Copy link
Copy Markdown
Contributor

any side effects from dynamo? Also I guess stuff like inheritance or decorator is just confusing?

@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mergennachin

Copy link
Copy Markdown
Contributor

why is this recompiling in the first place?

@mcr229

mcr229 commented Mar 25, 2025

Copy link
Copy Markdown
ContributorAuthor

why is this recompiling in the first place?

We have a for loop exporting the same model for different configurations multiple times. I think the issue lies there where we are "re-exporting" the same model. So it seems like we need to reset dynamo after each export. It is strange though because in each loop we are technically initializing a new module, I'm guessing there is some internal cache in dynamo that recognizes its the same model structure, and tries to recompile instead.

@GregoryComerGregoryComer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

@mergennachin

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

@tugsbayasgalan

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

I am not really sure, but i know torchdynamo test cases do the same thing due to some caching stuff. Maybe cc: @anijain2305 knows better

@mcr229

Copy link
Copy Markdown
ContributorAuthor

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

yea i was thinking that, but i didn't want to add another abstraction we maintain just for _dynamo.reset(). I guess in the future could be useful.

@mcr229

Copy link
Copy Markdown
ContributorAuthor

trunk / test-models-macos (llama2, xnnpack-quantization-delegation) / macos-job (push)

seems to be flaky and have intermittent failures. This PR likely doesn't have anything to do with that failure. Will follow up on that flaky test after landing this PR.

@mcr229
mcr229 merged commit f7e6dbf into pytorch:mainMar 25, 2025
pytorchmergebot pushed a commit to pytorch/pytorch that referenced this pull request Apr 1, 2025
kirklandsign pushed a commit that referenced this pull request Apr 11, 2025
https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423
There seems to be some CI issues with:
```
torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing
```
To help resolve this we reset dynamo at setup for all unittests. Let's
see if this helps
amathewc pushed a commit to amathewc/pytorch that referenced this pull request Apr 17, 2025
huydhn pushed a commit to pytorch/pytorch that referenced this pull request May 16, 2025
atalman pushed a commit to pytorch/pytorch that referenced this pull request May 21, 2025
…53750)
* Update ExecuTorch pin to latest viable/strict 3/28/2025 (#150308)
From latest viable/strict: https://hud.pytorch.org/hud/pytorch/executorch/viable%2Fstrict/1?per_page=50Fixes#144480
This commit has important CI stability fixes, such as pytorch/executorch#9561 and pytorch/executorch#9634
Pull Request resolved: #150308
Approved by: https://github.com/jathu, https://github.com/malfet
* Use new hash from #150722
* Update executorch.txt
---------
Co-authored-by: Mergen Nachin <mnachin@meta.com>
@mcr229
mcr229 deleted the reset_dynamo branch July 25, 2025 22:43
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/trunkCLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.topic: not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mcr229@facebook-github-bot@digantdesai@mergennachin@tugsbayasgalan@GregoryComer
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Reset Dynamo at Setup for all tests - #9561

Merged
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo
Mar 25, 2025
Merged

Reset Dynamo at Setup for all tests#9561
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo

Conversation

@mcr229

Copy link
Copy Markdown
Contributor

https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423

There seems to be some CI issues with:

torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing

To help resolve this we reset dynamo at setup for all unittests. Let's see if this helps

@pytorch-bot

pytorch-botBot commented Mar 24, 2025

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 1 New Failure, 1 Pending

As of commit 5417019 with merge base 5c5b84e (image):

NEW FAILURE - The following job has failed:

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

@facebook-github-botfacebook-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, 2025
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mcr229
mcr229 requested review from GregoryComer and digantdesai and removed request for digantdesaiMarch 24, 2025 23:59
@digantdesai

Copy link
Copy Markdown
Contributor

any side effects from dynamo? Also I guess stuff like inheritance or decorator is just confusing?

@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mergennachin

Copy link
Copy Markdown
Contributor

why is this recompiling in the first place?

@mcr229

mcr229 commented Mar 25, 2025

Copy link
Copy Markdown
ContributorAuthor

why is this recompiling in the first place?

We have a for loop exporting the same model for different configurations multiple times. I think the issue lies there where we are "re-exporting" the same model. So it seems like we need to reset dynamo after each export. It is strange though because in each loop we are technically initializing a new module, I'm guessing there is some internal cache in dynamo that recognizes its the same model structure, and tries to recompile instead.

@GregoryComerGregoryComer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

@mergennachin

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

@tugsbayasgalan

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

I am not really sure, but i know torchdynamo test cases do the same thing due to some caching stuff. Maybe cc: @anijain2305 knows better

@mcr229

Copy link
Copy Markdown
ContributorAuthor

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

yea i was thinking that, but i didn't want to add another abstraction we maintain just for _dynamo.reset(). I guess in the future could be useful.

@mcr229

Copy link
Copy Markdown
ContributorAuthor

trunk / test-models-macos (llama2, xnnpack-quantization-delegation) / macos-job (push)

seems to be flaky and have intermittent failures. This PR likely doesn't have anything to do with that failure. Will follow up on that flaky test after landing this PR.

@mcr229
mcr229 merged commit f7e6dbf into pytorch:mainMar 25, 2025
pytorchmergebot pushed a commit to pytorch/pytorch that referenced this pull request Apr 1, 2025
kirklandsign pushed a commit that referenced this pull request Apr 11, 2025
https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423
There seems to be some CI issues with:
```
torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing
```
To help resolve this we reset dynamo at setup for all unittests. Let's
see if this helps
amathewc pushed a commit to amathewc/pytorch that referenced this pull request Apr 17, 2025
huydhn pushed a commit to pytorch/pytorch that referenced this pull request May 16, 2025
atalman pushed a commit to pytorch/pytorch that referenced this pull request May 21, 2025
…53750)
* Update ExecuTorch pin to latest viable/strict 3/28/2025 (#150308)
From latest viable/strict: https://hud.pytorch.org/hud/pytorch/executorch/viable%2Fstrict/1?per_page=50Fixes#144480
This commit has important CI stability fixes, such as pytorch/executorch#9561 and pytorch/executorch#9634
Pull Request resolved: #150308
Approved by: https://github.com/jathu, https://github.com/malfet
* Use new hash from #150722
* Update executorch.txt
---------
Co-authored-by: Mergen Nachin <mnachin@meta.com>
@mcr229
mcr229 deleted the reset_dynamo branch July 25, 2025 22:43
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/trunkCLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.topic: not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mcr229@facebook-github-bot@digantdesai@mergennachin@tugsbayasgalan@GregoryComer
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Reset Dynamo at Setup for all tests - #9561

Merged
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo
Mar 25, 2025
Merged

Reset Dynamo at Setup for all tests#9561
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo

Conversation

@mcr229

Copy link
Copy Markdown
Contributor

https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423

There seems to be some CI issues with:

torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing

To help resolve this we reset dynamo at setup for all unittests. Let's see if this helps

@pytorch-bot

pytorch-botBot commented Mar 24, 2025

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 1 New Failure, 1 Pending

As of commit 5417019 with merge base 5c5b84e (image):

NEW FAILURE - The following job has failed:

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

@facebook-github-botfacebook-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, 2025
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mcr229
mcr229 requested review from GregoryComer and digantdesai and removed request for digantdesaiMarch 24, 2025 23:59
@digantdesai

Copy link
Copy Markdown
Contributor

any side effects from dynamo? Also I guess stuff like inheritance or decorator is just confusing?

@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mergennachin

Copy link
Copy Markdown
Contributor

why is this recompiling in the first place?

@mcr229

mcr229 commented Mar 25, 2025

Copy link
Copy Markdown
ContributorAuthor

why is this recompiling in the first place?

We have a for loop exporting the same model for different configurations multiple times. I think the issue lies there where we are "re-exporting" the same model. So it seems like we need to reset dynamo after each export. It is strange though because in each loop we are technically initializing a new module, I'm guessing there is some internal cache in dynamo that recognizes its the same model structure, and tries to recompile instead.

@GregoryComerGregoryComer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

@mergennachin

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

@tugsbayasgalan

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

I am not really sure, but i know torchdynamo test cases do the same thing due to some caching stuff. Maybe cc: @anijain2305 knows better

@mcr229

Copy link
Copy Markdown
ContributorAuthor

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

yea i was thinking that, but i didn't want to add another abstraction we maintain just for _dynamo.reset(). I guess in the future could be useful.

@mcr229

Copy link
Copy Markdown
ContributorAuthor

trunk / test-models-macos (llama2, xnnpack-quantization-delegation) / macos-job (push)

seems to be flaky and have intermittent failures. This PR likely doesn't have anything to do with that failure. Will follow up on that flaky test after landing this PR.

@mcr229
mcr229 merged commit f7e6dbf into pytorch:mainMar 25, 2025
pytorchmergebot pushed a commit to pytorch/pytorch that referenced this pull request Apr 1, 2025
kirklandsign pushed a commit that referenced this pull request Apr 11, 2025
https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423
There seems to be some CI issues with:
```
torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing
```
To help resolve this we reset dynamo at setup for all unittests. Let's
see if this helps
amathewc pushed a commit to amathewc/pytorch that referenced this pull request Apr 17, 2025
huydhn pushed a commit to pytorch/pytorch that referenced this pull request May 16, 2025
atalman pushed a commit to pytorch/pytorch that referenced this pull request May 21, 2025
…53750)
* Update ExecuTorch pin to latest viable/strict 3/28/2025 (#150308)
From latest viable/strict: https://hud.pytorch.org/hud/pytorch/executorch/viable%2Fstrict/1?per_page=50Fixes#144480
This commit has important CI stability fixes, such as pytorch/executorch#9561 and pytorch/executorch#9634
Pull Request resolved: #150308
Approved by: https://github.com/jathu, https://github.com/malfet
* Use new hash from #150722
* Update executorch.txt
---------
Co-authored-by: Mergen Nachin <mnachin@meta.com>
@mcr229
mcr229 deleted the reset_dynamo branch July 25, 2025 22:43
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/trunkCLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.topic: not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mcr229@facebook-github-bot@digantdesai@mergennachin@tugsbayasgalan@GregoryComer
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Reset Dynamo at Setup for all tests - #9561

Merged
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo
Mar 25, 2025
Merged

Reset Dynamo at Setup for all tests#9561
mcr229 merged 2 commits into
pytorch:mainfrom
mcr229:reset_dynamo

Conversation

@mcr229

Copy link
Copy Markdown
Contributor

https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423

There seems to be some CI issues with:

torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing

To help resolve this we reset dynamo at setup for all unittests. Let's see if this helps

@pytorch-bot

pytorch-botBot commented Mar 24, 2025

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 1 New Failure, 1 Pending

As of commit 5417019 with merge base 5c5b84e (image):

NEW FAILURE - The following job has failed:

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

@facebook-github-botfacebook-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, 2025
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mcr229
mcr229 requested review from GregoryComer and digantdesai and removed request for digantdesaiMarch 24, 2025 23:59
@digantdesai

Copy link
Copy Markdown
Contributor

any side effects from dynamo? Also I guess stuff like inheritance or decorator is just confusing?

@facebook-github-bot

Copy link
Copy Markdown
Contributor

@mcr229 has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@mergennachin

Copy link
Copy Markdown
Contributor

why is this recompiling in the first place?

@mcr229

mcr229 commented Mar 25, 2025

Copy link
Copy Markdown
ContributorAuthor

why is this recompiling in the first place?

We have a for loop exporting the same model for different configurations multiple times. I think the issue lies there where we are "re-exporting" the same model. So it seems like we need to reset dynamo after each export. It is strange though because in each loop we are technically initializing a new module, I'm guessing there is some internal cache in dynamo that recognizes its the same model structure, and tries to recompile instead.

@GregoryComerGregoryComer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

@mergennachin

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

@tugsbayasgalan

Copy link
Copy Markdown
Contributor

@tugsbayasgalan do you know if this is the right change?

I am not really sure, but i know torchdynamo test cases do the same thing due to some caching stuff. Maybe cc: @anijain2305 knows better

@mcr229

Copy link
Copy Markdown
ContributorAuthor

Nit: It might be nice to define a common test fixture for models + ops. If this fixes it, maybe we can create a "good first issue"-tagged issue to get help doing the refactoring.

yea i was thinking that, but i didn't want to add another abstraction we maintain just for _dynamo.reset(). I guess in the future could be useful.

@mcr229

Copy link
Copy Markdown
ContributorAuthor

trunk / test-models-macos (llama2, xnnpack-quantization-delegation) / macos-job (push)

seems to be flaky and have intermittent failures. This PR likely doesn't have anything to do with that failure. Will follow up on that flaky test after landing this PR.

@mcr229
mcr229 merged commit f7e6dbf into pytorch:mainMar 25, 2025
pytorchmergebot pushed a commit to pytorch/pytorch that referenced this pull request Apr 1, 2025
kirklandsign pushed a commit that referenced this pull request Apr 11, 2025
https://github.com/pytorch/executorch/actions/runs/14047575373/job/39331644423
There seems to be some CI issues with:
```
torch._dynamo.exc.FailOnRecompileLimitHit: recompile_limit reached with one_graph=True. Excessive recompilations can degrade performance due to the compilation overhead of each recompilation. To monitor recompilations, enable TORCH_LOGS=recompiles. If recompilations are expected, consider increasing
```
To help resolve this we reset dynamo at setup for all unittests. Let's
see if this helps
amathewc pushed a commit to amathewc/pytorch that referenced this pull request Apr 17, 2025
huydhn pushed a commit to pytorch/pytorch that referenced this pull request May 16, 2025
atalman pushed a commit to pytorch/pytorch that referenced this pull request May 21, 2025
…53750)
* Update ExecuTorch pin to latest viable/strict 3/28/2025 (#150308)
From latest viable/strict: https://hud.pytorch.org/hud/pytorch/executorch/viable%2Fstrict/1?per_page=50Fixes#144480
This commit has important CI stability fixes, such as pytorch/executorch#9561 and pytorch/executorch#9634
Pull Request resolved: #150308
Approved by: https://github.com/jathu, https://github.com/malfet
* Use new hash from #150722
* Update executorch.txt
---------
Co-authored-by: Mergen Nachin <mnachin@meta.com>
@mcr229
mcr229 deleted the reset_dynamo branch July 25, 2025 22:43
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/trunkCLA SignedThis label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.topic: not user facing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@mcr229@facebook-github-bot@digantdesai@mergennachin@tugsbayasgalan@GregoryComer