Skip to content

Conversation

mdboom
Copy link
Contributor

@mdboom mdboom commented Jan 24, 2025

In earlier versions of MSVC, the compiler would crash when doing a PGO build due to the large size of PyEval_EvalFrameDefault. This bug has been fixed upstream in MSVC, so we should remove our workaround.

While this does re-enable optimizations on PyEval_EvalFrameDefault, the performance gains on the benchmarks are unfortunately below the measurement threshold. Still worth doing without a performance benefit just to simplify things.

@neonene
Copy link
Contributor

neonene commented Jan 24, 2025

_Py_USING_PGO flag added in bc12f79 is still worth preserving?

(I guess the perf measurement target would be JIT and free-threaded builds if really needed, rather than default builds.)

@mdboom
Copy link
Contributor Author

mdboom commented Jan 24, 2025

_Py_USING_PGO flag added in bc12f79 is still worth preserving?

I think it might be useful in the future, but if it's not being used it may just bitrot, so probably better to remove it. I'll add that to this PR.

@mdboom mdboom requested a review from a team as a code owner January 24, 2025 19:10
@mdboom mdboom merged commit 9e52e55 into python:main Jan 25, 2025
44 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants