Skip to content

Prepare fixup for lazy deserialization#21170

Open
ilevkivskyi wants to merge 3 commits intopython:masterfrom
ilevkivskyi:lazy-2
Open

Prepare fixup for lazy deserialization#21170
ilevkivskyi wants to merge 3 commits intopython:masterfrom
ilevkivskyi:lazy-2

Conversation

@ilevkivskyi
Copy link
Copy Markdown
Member

Together with #21158, this gets us 95% there for lazy desrialization. Implementation is generally straightforward. At some point I wanted to unify the new global state with (parts of) the checker state, and potentially get rid of a bunch of named_type callbacks we pass around, but decided to do this later in a separate PR, since this is not strictly necessary for parallel checking.

Although this PR itself only makes fixup phase (which is the smaller part of deserialization) lazy, it already shows small performance improvements:

  • ~net zero on self-check
  • few percent faster cold torch with 4 workers
  • ~15% faster warm torch

cc @JukkaL

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 4, 2026

According to mypy_primer, this change doesn't affect type check results on a corpus of open source code. ✅

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant