-
Notifications
You must be signed in to change notification settings - Fork 26.3k
[jit] correctly share types between traced modules #29583
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
Conversation
The normal flow for type sharing assumes that we will construct the `ConcreteModuleType`, then use `operator==` to decide whether or not to reuse an existing JIT type. In this case, `jitType_` is not populated, so it doesn't make sense to compare it. However, there is one exception to this flow: for traced modules, we pre-compute the JIT type and poke it into the `ConcreteModuleType` manually. To handle this case, we should compare the `jitType_`s in `operator==` like everything else.
The normal flow for type sharing assumes that we will construct the `ConcreteModuleType`, then use `operator==` to decide whether or not to reuse an existing JIT type. In this case, `jitType_` is not populated, so it doesn't make sense to compare it. However, there is one exception to this flow: for traced modules, we pre-compute the JIT type and poke it into the `ConcreteModuleType` manually. To handle this case, we should compare the `jitType_`s in `operator==` like everything else. Differential Revision: [D18435949](https://our.internmc.facebook.com/intern/diff/D18435949)
The normal flow for type sharing assumes that we will construct the `ConcreteModuleType`, then use `operator==` to decide whether or not to reuse an existing JIT type. In this case, `jitType_` is not populated, so it doesn't make sense to compare it. However, there is one exception to this flow: for traced modules, we pre-compute the JIT type and poke it into the `ConcreteModuleType` manually. To handle this case, we should compare the `jitType_`s in `operator==` like everything else. ghstack-source-id: ffc21c9 Pull Request resolved: #29583
ZolotukhinM
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
CircleCI build failures summaryAs of commit 1c976a8:
Here are the reasons each build failed. This comment was automatically generated by Dr. CI. Please report bugs/suggestions on the GitHub issue tracker. This comment has been revised 1 time(s). |
Stack from ghstack:
ConcreteModuleType::dump()#29582 ImproveConcreteModuleType::dump()The normal flow for type sharing assumes that we will construct the
ConcreteModuleType, then useoperator==to decide whether or not toreuse an existing JIT type. In this case,
jitType_is not populated,so it doesn't make sense to compare it.
However, there is one exception to this flow: for traced modules, we
pre-compute the JIT type and poke it into the
ConcreteModuleTypemanually. To handle this case, we should compare the
jitType_s inoperator==like everything else.Differential Revision: D18435949