Skip to content

[TensorExpr] TensorExprKernel: don't do any compilation or lowering in run().#37948

Closed
ZolotukhinM wants to merge 4 commits intogh/ZolotukhinM/239/basefrom
gh/ZolotukhinM/239/head
Closed

[TensorExpr] TensorExprKernel: don't do any compilation or lowering in run().#37948
ZolotukhinM wants to merge 4 commits intogh/ZolotukhinM/239/basefrom
gh/ZolotukhinM/239/head

Conversation

@ZolotukhinM
Copy link
Copy Markdown

@ZolotukhinM ZolotukhinM commented May 6, 2020

Stack from ghstack:

The input JIT graph has all the information we need to perform the
entire compilation at the construction time. We don't need to postpone
any steps until the execution time. Also, from the graph we always know
what device we will be executing on and thus we don't need to have a
CodeGen cache in TensorExprKernel - we always have one and only one
CodeGen.

Differential Revision: D21432145

…n run().

The input JIT graph has all the information we need to perform the
entire compilation at the construction time. We don't need to postpone
any steps until the execution time. Also, from the graph we always know
what device we will be executing on and thus we don't need to have a
CodeGen cache in TensorExprKernel - we always have one and only one
CodeGen.

[ghstack-poisoned]
… lowering in run()."

The input JIT graph has all the information we need to perform the
entire compilation at the construction time. We don't need to postpone
any steps until the execution time. Also, from the graph we always know
what device we will be executing on and thus we don't need to have a
CodeGen cache in TensorExprKernel - we always have one and only one
CodeGen.

[ghstack-poisoned]
ZolotukhinM pushed a commit that referenced this pull request May 6, 2020
…n run().

The input JIT graph has all the information we need to perform the
entire compilation at the construction time. We don't need to postpone
any steps until the execution time. Also, from the graph we always know
what device we will be executing on and thus we don't need to have a
CodeGen cache in TensorExprKernel - we always have one and only one
CodeGen.

ghstack-source-id: e1fc41c
Pull Request resolved: #37948
@protonu protonu self-assigned this May 6, 2020
@dr-ci
Copy link
Copy Markdown

dr-ci Bot commented May 6, 2020

💊 CI failures summary and remediations

As of commit de9aeb5 (more details on the Dr. CI page):


  • 1/1 failures possibly* introduced in this PR
    • 1/1 non-CircleCI failure(s)

ci.pytorch.org: 1 failed


This comment was automatically generated by Dr. CI (expand for details).Follow this link to opt-out of these comments for your Pull Requests.

Please report bugs/suggestions on the GitHub issue tracker.

See how this bot performed.

This comment has been revised 7 times.

… lowering in run()."

The input JIT graph has all the information we need to perform the
entire compilation at the construction time. We don't need to postpone
any steps until the execution time. Also, from the graph we always know
what device we will be executing on and thus we don't need to have a
CodeGen cache in TensorExprKernel - we always have one and only one
CodeGen.

Differential Revision: [D21432145](https://our.internmc.facebook.com/intern/diff/D21432145)

[ghstack-poisoned]
ZolotukhinM pushed a commit that referenced this pull request May 12, 2020
…n run().

The input JIT graph has all the information we need to perform the
entire compilation at the construction time. We don't need to postpone
any steps until the execution time. Also, from the graph we always know
what device we will be executing on and thus we don't need to have a
CodeGen cache in TensorExprKernel - we always have one and only one
CodeGen.

ghstack-source-id: 90856fa
Pull Request resolved: #37948
… lowering in run()."

The input JIT graph has all the information we need to perform the
entire compilation at the construction time. We don't need to postpone
any steps until the execution time. Also, from the graph we always know
what device we will be executing on and thus we don't need to have a
CodeGen cache in TensorExprKernel - we always have one and only one
CodeGen.

Differential Revision: [D21432145](https://our.internmc.facebook.com/intern/diff/D21432145)

[ghstack-poisoned]
ZolotukhinM pushed a commit that referenced this pull request May 13, 2020
…n run().

The input JIT graph has all the information we need to perform the
entire compilation at the construction time. We don't need to postpone
any steps until the execution time. Also, from the graph we always know
what device we will be executing on and thus we don't need to have a
CodeGen cache in TensorExprKernel - we always have one and only one
CodeGen.

ghstack-source-id: a8ccf12
Pull Request resolved: #37948
@protonu
Copy link
Copy Markdown

protonu commented May 13, 2020

@ZolotukhinM , does this work with the multigpu tests in test_jit_fuser_te.py?

@ZolotukhinM
Copy link
Copy Markdown
Author

@ZolotukhinM , does this work with the multigpu tests in test_jit_fuser_te.py?

All tests pass with this change.

@facebook-github-bot
Copy link
Copy Markdown
Contributor

@ZolotukhinM merged this pull request in 6e13146.

@facebook-github-bot facebook-github-bot deleted the gh/ZolotukhinM/239/head branch May 17, 2020 14:18
laurentdupin pushed a commit to laurentdupin/pytorch that referenced this pull request Apr 24, 2026
…n run(). (pytorch#37948)

Summary:
Pull Request resolved: pytorch#37948

The input JIT graph has all the information we need to perform the
entire compilation at the construction time. We don't need to postpone
any steps until the execution time. Also, from the graph we always know
what device we will be executing on and thus we don't need to have a
CodeGen cache in TensorExprKernel - we always have one and only one
CodeGen.

Test Plan: Imported from OSS

Reviewed By: protonu

Differential Revision: D21432145

Pulled By: ZolotukhinM

fbshipit-source-id: 8dc86b891713056b2c62f30170cd4a168912f027
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Merged oncall: jit Add this issue/PR to JIT oncall triage queue

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants