Skip to content

Conversation

@VanshAgarwal24036
Copy link
Contributor

@VanshAgarwal24036 VanshAgarwal24036 commented Jan 13, 2026

This PR fixes a JIT crash where executor table size could exceed
MAX_EXECUTORS_SIZE due to excessively large initial backoff values.

Reducing the initial values for backward jumps and side exits keeps
executor growth bounded while preserving existing cooldown and tracing
heuristics.

Fixes gh-143807.


📚 Documentation preview 📚: https://cpython-previews--143812.org.readthedocs.build/

@VanshAgarwal24036 VanshAgarwal24036 force-pushed the gh-143807-jit-backoff-fix branch from 7ba983b to ee2f621 Compare January 13, 2026 17:54
@devdanzin
Copy link
Member

Is the change to JUMP_BACKWARD_INITIAL_VALUE from 4000 to 63 intended? I only use the smaller value because it makes crashing the JIT easier.

@Fidget-Spinner
Copy link
Member

Sorry but this fix doesn't seem right. The problem isn't with the warmup/backoff values.

@VanshAgarwal24036
Copy link
Contributor Author

Thanks for the clarification. That makes sense — I see now that reducing the backoff values only masks the issue rather than addressing the underlying executor growth problem. I’ll take another look at how executors are tracked and bounded in get_index_for_executor to understand the real root cause. Appreciate the feedback.

@Fidget-Spinner
Copy link
Member

Fidget-Spinner commented Jan 14, 2026

@VanshAgarwal24036 if you're using an LLM to wholesale reply me, please look at our generative AI policy https://devguide.python.org/getting-started/generative-ai/

It's not acceptable to use genAI to wholly create a PR or reply comments. It's perfectly fine if you're using it to assist you. Please try to understand the code or comment at least after using the LLM.

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.

JIT: Assertion size < MAX_EXECUTORS_SIZE failed in get_index_for_executor

3 participants