the "nogil" interpreter stays within the same interpreter loop for many Python function calls, while upstream CPythonrecursively calls into _PyEval_EvalFrameDefault.