mirror of https://github.com/python/cpython
gh-118518: Rename `PYTHONPERFJITSUPPORT` and `-X perfjit` with underscores (#118693)
This commit is contained in:
parent
48e52fe2c9
commit
04859228aa
|
@ -1250,10 +1250,10 @@ PyConfig
|
|||
If non-zero, initialize the perf trampoline. See :ref:`perf_profiling`
|
||||
for more information.
|
||||
|
||||
Set by :option:`-X perf <-X>` command line option and by the
|
||||
:envvar:`PYTHONPERFSUPPORT` environment variable for perf support
|
||||
with stack pointers and :option:`-X perfjit <-X>` command line option
|
||||
and by the :envvar:`PYTHONPERFJITSUPPORT` environment variable for perf
|
||||
Set by :option:`-X perf <-X>` command-line option and by the
|
||||
:envvar:`PYTHON_PERF_JIT_SUPPORT` environment variable for perf support
|
||||
with stack pointers and :option:`-X perf_jit <-X>` command-line option
|
||||
and by the :envvar:`PYTHON_PERF_JIT_SUPPORT` environment variable for perf
|
||||
support with DWARF JIT information.
|
||||
|
||||
Default: ``-1``.
|
||||
|
|
|
@ -216,19 +216,19 @@ needs to generate unwinding information for every Python function call on the fl
|
|||
``perf`` will take more time to process the data because it will need to use the DWARF debugging
|
||||
information to unwind the stack and this is a slow process.
|
||||
|
||||
To enable this mode, you can use the environment variable :envvar:`PYTHONPERFJITSUPPORT` or the
|
||||
:option:`-X perfjit <-X>` option, which will enable the JIT mode for the ``perf`` profiler.
|
||||
To enable this mode, you can use the environment variable :envvar:`PYTHON_PERF_JIT_SUPPORT` or the
|
||||
:option:`-X perf_jit <-X>` option, which will enable the JIT mode for the ``perf`` profiler.
|
||||
|
||||
When using the perf JIT mode, you need an extra step before you can run ``perf report``. You need to
|
||||
call the ``perf inject`` command to inject the JIT information into the ``perf.data`` file.
|
||||
|
||||
$ perf record -F 9999 -g --call-graph dwarf -o perf.data python -Xperfjit my_script.py
|
||||
$ perf record -F 9999 -g --call-graph dwarf -o perf.data python -Xperf_jit my_script.py
|
||||
$ perf inject -i perf.data --jit
|
||||
$ perf report -g -i perf.data
|
||||
|
||||
or using the environment variable::
|
||||
|
||||
$ PYTHONPERFJITSUPPORT=1 perf record -F 9999 -g --call-graph dwarf -o perf.data python my_script.py
|
||||
$ PYTHON_PERF_JIT_SUPPORT=1 perf record -F 9999 -g --call-graph dwarf -o perf.data python my_script.py
|
||||
$ perf inject -i perf.data --jit
|
||||
$ perf report -g -i perf.data
|
||||
|
||||
|
|
|
@ -587,11 +587,11 @@ Miscellaneous options
|
|||
|
||||
.. versionadded:: 3.12
|
||||
|
||||
* ``-X perfjit`` enables support for the Linux ``perf`` profiler with DWARF
|
||||
* ``-X perf_jit`` enables support for the Linux ``perf`` profiler with DWARF
|
||||
support. When this option is provided, the ``perf`` profiler will be able
|
||||
to report Python calls using DWARF ifnormation. This option is only available on
|
||||
to report Python calls using DWARF information. This option is only available on
|
||||
some platforms and will do nothing if is not supported on the current
|
||||
system. The default value is "off". See also :envvar:`PYTHONPERFJITSUPPORT`
|
||||
system. The default value is "off". See also :envvar:`PYTHON_PERF_JIT_SUPPORT`
|
||||
and :ref:`perf_profiling`.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
|
@ -1137,7 +1137,7 @@ conflict.
|
|||
|
||||
.. versionadded:: 3.12
|
||||
|
||||
.. envvar:: PYTHONPERFJITSUPPORT
|
||||
.. envvar:: PYTHON_PERF_JIT_SUPPORT
|
||||
|
||||
If this variable is set to a nonzero value, it enables support for
|
||||
the Linux ``perf`` profiler so Python calls can be detected by it
|
||||
|
@ -1145,7 +1145,7 @@ conflict.
|
|||
|
||||
If set to ``0``, disable Linux ``perf`` profiler support.
|
||||
|
||||
See also the :option:`-X perfjit <-X>` command-line option
|
||||
See also the :option:`-X perf_jit <-X>` command-line option
|
||||
and :ref:`perf_profiling`.
|
||||
|
||||
.. versionadded:: 3.13
|
||||
|
|
|
@ -272,7 +272,7 @@ Other Language Changes
|
|||
|
||||
* Add :ref:`support for the perf profiler <perf_profiling>` working without
|
||||
frame pointers through the new environment variable
|
||||
:envvar:`PYTHONPERFJITSUPPORT` and command-line option :option:`-X perfjit
|
||||
:envvar:`PYTHON_PERF_JIT_SUPPORT` and command-line option :option:`-X perf_jit
|
||||
<-X>` (Contributed by Pablo Galindo in :gh:`118518`.)
|
||||
|
||||
* The new :envvar:`PYTHON_HISTORY` environment variable can be used to change
|
||||
|
|
|
@ -494,7 +494,7 @@ class TestPerfProfilerWithDwarf(unittest.TestCase, TestPerfProfilerMixin):
|
|||
def run_perf(self, script_dir, script, activate_trampoline=True):
|
||||
if activate_trampoline:
|
||||
return run_perf(
|
||||
script_dir, sys.executable, "-Xperfjit", script, use_jit=True
|
||||
script_dir, sys.executable, "-Xperf_jit", script, use_jit=True
|
||||
)
|
||||
return run_perf(script_dir, sys.executable, script, use_jit=True)
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Allow the Linux perf support to work without frame pointers using perf's
|
||||
advanced JIT support. The feature is activated when using the
|
||||
``PYTHONPERFJITSUPPORT`` environment variable or when running Python with
|
||||
``-Xperfjit``. Patch by Pablo Galindo
|
||||
``PYTHON_PERF_JIT_SUPPORT`` environment variable or when running Python with
|
||||
``-Xperf_jit``. Patch by Pablo Galindo.
|
||||
|
|
|
@ -1703,7 +1703,7 @@ config_init_perf_profiling(PyConfig *config)
|
|||
if (xoption) {
|
||||
config->perf_profiling = 1;
|
||||
}
|
||||
env = config_get_env(config, "PYTHONPERFJITSUPPORT");
|
||||
env = config_get_env(config, "PYTHON_PERF_JIT_SUPPORT");
|
||||
if (env) {
|
||||
if (_Py_str_to_int(env, &active) != 0) {
|
||||
active = 0;
|
||||
|
@ -1712,7 +1712,7 @@ config_init_perf_profiling(PyConfig *config)
|
|||
config->perf_profiling = 2;
|
||||
}
|
||||
}
|
||||
xoption = config_get_xoption(config, L"perfjit");
|
||||
xoption = config_get_xoption(config, L"perf_jit");
|
||||
if (xoption) {
|
||||
config->perf_profiling = 2;
|
||||
}
|
||||
|
|
|
@ -2294,7 +2294,7 @@ sys_activate_stack_trampoline_impl(PyObject *module, const char *backend)
|
|||
return NULL;
|
||||
}
|
||||
}
|
||||
else if (strcmp(backend, "perfjit") == 0) {
|
||||
else if (strcmp(backend, "perf_jit") == 0) {
|
||||
_PyPerf_Callbacks cur_cb;
|
||||
_PyPerfTrampoline_GetCallbacks(&cur_cb);
|
||||
if (cur_cb.write_state != _Py_perfmap_jit_callbacks.write_state) {
|
||||
|
|
Loading…
Reference in New Issue