struct _ceval_state {
/* This single variable consolidates all requests to break out of
- the fast path in the eval loop. */
+ * the fast path in the eval loop.
+ * It is by far the hottest field in this struct and
+ * should be placed at the beginning. */
_Py_atomic_int eval_breaker;
/* Request for dropping the GIL */
_Py_atomic_int gil_drop_request;
*/
struct _is {
+ /* This struct countains the eval_breaker,
+ * which is by far the hottest field in this struct
+ * and should be placed at the beginning. */
+ struct _ceval_state ceval;
+
PyInterpreterState *next;
int64_t id;
// Dictionary of the builtins module
PyObject *builtins;
- struct _ceval_state ceval;
-
struct _import_state imports;
/* The per-interpreter GIL, which might not be used. */