Victor Stinner
a0773b89df
gh-108753: Enhance pystats ( #108754 )
...
Statistics gathering is now off by default. Use the "-X pystats"
command line option or set the new PYTHONSTATS environment variable
to 1 to turn statistics gathering on at Python startup.
Statistics are no longer dumped at exit if statistics gathering was
off or statistics have been cleared.
Changes:
* Add PYTHONSTATS environment variable.
* sys._stats_dump() now returns False if statistics are not dumped
because they are all equal to zero.
* Add PyConfig._pystats member.
* Add tests on sys functions and on setting PyConfig._pystats to 1.
* Add Include/cpython/pystats.h and Include/internal/pycore_pystats.h
header files.
* Rename '_py_stats' variable to '_Py_stats'.
* Exclude Include/cpython/pystats.h from the Py_LIMITED_API.
* Move pystats.h include from object.h to Python.h.
* Add _Py_StatsOn() and _Py_StatsOff() functions. Remove
'_py_stats_struct' variable from the API: make it static in
specialize.c.
* Document API in Include/pystats.h and Include/cpython/pystats.h.
* Complete pystats documentation in Doc/using/configure.rst.
* Don't write "all zeros" stats: if _stats_off() and _stats_clear()
or _stats_dump() were called.
* _PyEval_Fini() now always call _Py_PrintSpecializationStats() which
does nothing if stats are all zeros.
Co-authored-by: Michael Droettboom <mdboom@gmail.com >
2023-09-06 15:54:59 +00:00
..
2023-05-25 17:20:48 +02:00
2022-08-04 18:12:35 +02:00
2021-10-06 16:13:48 -07:00
2022-06-21 10:24:33 +02:00
2023-09-05 17:56:30 +03:00
2023-09-06 17:34:31 +02:00
2023-08-21 07:55:09 +00:00
2023-09-01 10:16:09 +01:00
2023-09-06 15:57:01 +02:00
2023-09-02 07:45:34 +03:00
2023-09-04 11:21:47 +02:00
2023-09-06 15:54:16 +02:00
2023-09-02 07:45:34 +03:00
2023-08-31 18:33:34 +02:00
2023-07-08 08:44:50 +00:00
2023-06-26 20:35:53 +02:00
2023-08-23 17:42:08 +02:00
2023-08-24 05:35:39 +02:00
2023-08-24 05:35:39 +02:00
2023-08-24 05:35:39 +02:00
2023-08-24 00:52:48 +02:00
2023-08-30 14:53:10 +00:00
2023-08-22 15:52:32 +02:00
2023-09-06 17:34:31 +02:00
2023-09-02 07:45:34 +03:00
2023-08-07 14:11:39 +03:00
2023-09-05 18:57:48 +00:00
2023-07-10 16:29:03 -04:00
2023-07-15 09:21:17 -04:00
2023-05-12 08:35:53 -04:00
2023-05-26 13:29:45 +00:00
2023-08-23 17:42:08 +02:00
2021-12-09 13:53:44 +00:00
2022-06-15 18:49:14 +02:00
2022-10-26 11:16:30 -06:00
2023-04-22 13:39:37 -06:00
2023-09-05 17:56:30 +03:00
2023-03-08 11:45:38 +00:00
2022-05-03 07:21:42 -06:00
2023-09-05 10:25:08 +02:00
2023-09-03 21:37:15 +00:00
2023-08-25 00:51:22 +02:00
2023-02-22 19:10:01 +00:00
2023-05-03 11:17:27 -04:00
2022-12-30 17:25:01 +05:30
2022-01-22 21:48:56 +01:00
2023-03-08 11:45:38 +00:00
2021-10-09 16:51:30 +01:00
2023-07-18 23:20:31 +00:00
2023-05-30 22:52:52 +01:00
2022-10-04 15:31:16 -07:00
2023-08-04 10:10:29 +01:00
2022-06-13 16:56:03 +02:00
2021-12-16 21:08:18 -08:00
2023-08-04 10:10:29 +01:00
2023-03-02 20:10:08 +09:00
2021-07-27 00:11:55 +02:00
2022-08-05 17:41:29 -07:00
2023-05-18 15:56:15 -07:00
2023-09-02 07:45:34 +03:00
2023-04-06 11:08:25 +01:00
2022-03-28 22:02:57 +01:00
2022-11-13 10:30:00 -08:00
2023-09-06 17:34:31 +02:00
2021-09-12 13:27:50 +03:00
2023-04-12 23:17:36 -05:00
2023-04-24 22:22:14 +00:00
2022-06-15 14:09:56 +02:00
2022-11-08 16:48:58 +01:00
2023-05-24 21:15:43 +00:00
2023-07-10 12:52:36 +03:00
2023-08-22 15:52:32 +02:00
2022-05-16 16:02:37 +02:00
2023-07-27 14:15:25 +01:00
2022-05-08 17:49:09 +03:00
2023-04-24 23:24:49 +00:00
2023-07-08 08:44:50 +00:00
2023-07-07 13:42:40 -07:00
2023-06-05 00:14:00 -07:00
2023-07-05 02:02:49 +09:00
2023-09-02 07:45:34 +03:00
2023-05-26 16:53:29 +05:30
2022-06-13 16:56:03 +02:00
2023-09-05 10:25:08 +02:00
2022-07-02 15:53:43 +09:00
2022-10-01 20:57:17 -07:00
2023-04-24 21:58:51 +01:00
2021-09-19 15:27:33 +03:00
2023-03-17 22:39:09 +09:00
2023-09-01 21:04:07 +00:00
2022-09-06 19:37:18 -04:00
2023-05-03 00:00:42 -07:00
2023-09-02 07:45:34 +03:00
2022-06-13 16:56:03 +02:00
2023-09-02 07:45:34 +03:00
2023-08-07 18:51:43 +03:00
2023-08-25 12:37:27 +03:00
2021-09-19 15:27:33 +03:00
2023-07-22 15:20:40 +02:00
2023-08-28 16:04:27 +03:00
2023-08-07 18:51:43 +03:00
2023-08-31 23:42:34 +02:00
2023-05-10 17:44:52 +01:00
2023-07-10 16:29:03 -04:00
2023-07-24 18:48:06 +00:00
2022-05-03 21:36:52 -06:00
2023-08-17 11:29:58 -07:00
2022-05-02 12:37:48 +03:00
2023-07-07 13:42:40 -07:00
2023-04-24 15:42:57 -06:00
2023-05-13 09:55:35 +01:00
2023-07-11 11:07:20 -04:00
2023-05-20 12:07:40 -04:00
2023-09-02 07:45:34 +03:00
2023-09-02 07:45:34 +03:00
2023-08-09 18:19:39 +00:00
2023-08-09 18:19:39 +00:00
2023-05-10 17:44:52 +01:00
2023-06-06 22:50:43 +02:00
2023-09-02 07:45:34 +03:00
2023-07-20 14:41:32 +05:30
2023-07-20 14:41:32 +05:30
2023-01-11 09:14:41 -08:00
2022-05-08 17:10:11 +03:00
2023-04-24 23:24:49 +00:00
2023-06-29 16:14:09 -07:00
2023-08-24 20:09:23 +02:00
2023-06-28 14:41:08 -06:00
2023-05-03 03:09:45 -06:00
2022-06-06 19:24:11 +02:00
2023-07-23 13:51:12 +00:00
2023-07-23 14:26:23 +00:00
2023-07-23 14:26:23 +00:00
2023-08-24 20:09:23 +02:00
2022-06-13 16:56:03 +02:00
2022-06-13 16:56:03 +02:00
2022-04-06 20:00:14 +03:00
2023-09-02 07:45:34 +03:00
2023-07-21 17:24:26 -07:00
2021-09-19 15:27:33 +03:00
2021-10-06 16:13:48 -07:00
2023-08-24 20:01:50 +00:00
2023-08-04 10:10:29 +01:00
2021-09-19 15:27:33 +03:00
2023-08-25 13:02:10 +01:00
2021-10-20 16:36:27 +02:00
2023-09-02 16:42:07 +02:00
2022-03-30 12:00:27 +01:00
2023-07-31 10:33:37 +02:00
2022-10-05 01:34:03 +01:00
2023-09-05 17:56:30 +03:00
2023-09-06 15:54:59 +00:00
2023-04-17 23:43:34 -05:00
2023-09-05 09:45:54 +01:00
2022-01-27 00:46:48 +09:00
2023-04-19 11:18:16 -05:00
2023-05-04 14:38:20 +00:00
2023-04-27 12:52:15 +01:00
2023-08-04 10:10:29 +01:00
2022-08-17 07:24:53 +02:00
2022-01-27 13:40:44 +00:00
2023-09-02 07:45:34 +03:00
2022-09-15 10:33:13 +01:00
2023-09-05 17:56:30 +03:00
2023-09-01 14:59:09 +02:00
2022-01-25 08:09:06 +01:00
2022-08-04 18:12:35 +02:00
2021-09-19 15:27:33 +03:00
2023-02-21 12:10:29 +09:00
2023-02-07 09:22:58 -08:00
2022-01-22 18:05:43 +02:00
2023-05-10 17:44:52 +01:00
2022-06-13 16:56:03 +02:00
2022-06-05 11:46:29 +03:00
2022-01-16 22:52:43 +01:00
2023-05-01 20:47:14 +01:00
2023-02-27 18:53:22 +00:00
2023-01-09 12:20:04 -08:00
2021-10-14 15:32:18 -06:00
2023-08-15 11:26:42 +00:00
2022-11-08 16:48:58 +01:00
2023-08-16 06:22:18 -07:00
2023-08-18 15:44:38 +00:00
2023-06-19 22:50:57 +01:00
2022-11-13 10:30:00 -08:00
2023-09-06 14:34:35 +00:00
2023-09-05 13:58:39 -07:00
2023-08-21 23:41:13 +00:00
2023-07-01 00:04:50 +00:00
2022-05-02 08:29:49 +03:00
2023-08-15 16:33:00 +01:00
2021-09-20 11:36:57 +03:00
2023-09-05 17:35:28 +03:00
2022-02-05 20:52:01 +01:00
2023-01-16 16:05:39 +00:00
2023-07-23 16:08:28 +02:00
2021-12-18 06:23:34 -08:00
2022-05-08 17:49:09 +03:00
2023-09-06 06:41:38 -07:00
2021-11-30 11:27:37 +09:00
2022-08-06 18:52:53 +02:00
2023-08-24 10:23:01 +02:00
2021-10-10 17:29:46 +09:00
2023-05-11 21:23:52 +00:00
2022-06-13 16:56:03 +02:00
2023-04-07 10:51:29 +09:00
2022-08-18 13:16:33 +02:00
2022-12-20 17:51:26 +01:00
2021-09-20 11:36:57 +03:00
2023-09-05 17:56:30 +03:00
2023-06-15 10:48:01 +00:00
2023-08-22 15:52:32 +02:00
2023-09-05 17:56:30 +03:00
2023-08-31 23:14:23 +02:00
2023-04-30 17:16:38 -07:00
2023-09-02 07:45:34 +03:00
2023-09-05 17:56:30 +03:00
2023-07-31 14:33:26 +00:00
2023-03-08 11:45:38 +00:00
2023-03-04 19:51:29 +05:30
2023-09-02 07:45:34 +03:00
2023-05-15 20:36:23 -07:00
2023-09-02 07:45:34 +03:00
2023-04-24 23:24:49 +00:00
2022-06-30 10:18:18 +01:00
2022-11-03 15:56:12 +01:00
2023-08-30 17:50:50 -06:00
2023-01-06 14:47:57 +00:00
2023-06-06 16:55:21 +02:00
2023-09-05 17:56:30 +03:00
2023-02-05 10:02:53 +00:00
2023-08-25 12:37:27 +03:00
2023-07-07 13:42:40 -07:00
2022-12-03 10:53:20 -06:00
2023-05-19 21:03:49 +01:00
2023-09-03 01:48:47 -07:00
2022-09-10 22:44:10 +02:00
2021-09-20 11:36:57 +03:00
2022-05-03 15:17:57 -06:00
2023-08-23 15:23:41 +03:00
2023-07-12 22:50:45 -04:00
2022-06-09 08:32:35 +02:00
2023-09-05 08:03:53 +01:00
2023-09-02 07:45:34 +03:00
2022-06-15 18:49:14 +02:00
2023-01-08 15:51:29 -07:00
2023-09-04 12:41:13 +03:00
2023-08-22 00:16:02 +00:00
2023-02-27 18:53:22 +00:00
2023-08-25 16:40:27 +00:00
2023-08-23 17:42:08 +02:00
2023-03-01 21:16:23 -06:00
2021-09-19 15:27:33 +03:00
2023-08-21 11:49:08 +02:00
2023-06-26 00:06:12 +01:00
2023-09-02 16:08:03 +01:00
2023-06-30 19:39:50 +00:00
2023-09-06 09:41:56 +00:00
2023-09-02 07:45:34 +03:00
2023-09-04 15:24:03 +03:00
2023-05-07 20:42:26 +01:00
2023-05-21 11:12:24 +01:00
2023-04-04 15:38:54 +05:30
2021-09-20 18:21:33 +03:00
2023-05-03 16:11:54 -07:00
2023-03-19 15:52:47 -07:00
2023-04-27 11:32:30 -06:00
2023-09-05 17:56:30 +03:00
2022-01-25 08:09:06 +01:00
2022-11-08 16:48:58 +01:00
2022-09-17 10:09:28 -07:00
2023-04-23 17:14:14 -06:00
2023-01-27 00:28:27 +00:00
2023-03-05 12:31:26 -05:00
2022-05-08 17:10:11 +03:00
2021-07-27 21:30:32 +01:00
2023-04-06 11:08:25 +01:00
2023-06-05 03:18:15 +00:00
2023-05-19 13:22:43 +00:00
2021-09-08 13:07:40 +03:00
2022-08-06 18:53:19 +02:00
2022-10-19 11:05:08 +01:00
2023-05-24 09:04:53 +00:00
2023-08-31 23:14:23 +02:00
2023-08-28 16:04:27 +03:00
2022-06-11 11:55:11 +02:00
2022-01-25 08:09:06 +01:00
2022-01-27 10:24:48 +00:00
2023-01-08 13:40:35 -06:00
2023-04-24 14:29:57 -04:00
2023-08-16 13:35:35 -07:00
2021-09-14 17:38:04 +02:00
2023-09-05 08:36:43 +03:00
2023-08-31 18:33:34 +02:00
2023-08-10 06:55:49 +00:00
2022-02-05 20:52:01 +01:00
2023-08-11 18:08:38 +03:00
2022-05-16 16:02:37 +02:00
2023-09-02 07:45:34 +03:00
2021-09-19 15:27:33 +03:00
2022-09-20 18:34:13 -07:00
2021-08-29 14:04:40 +03:00
2022-03-08 12:17:30 +01:00
2022-06-13 16:56:03 +02:00
2023-09-02 07:45:34 +03:00
2022-08-04 18:12:35 +02:00
2021-09-20 11:36:57 +03:00
2022-06-13 16:56:03 +02:00
2023-03-08 11:45:38 +00:00
2023-08-16 10:00:03 +03:00
2023-09-05 17:56:30 +03:00
2023-09-03 15:21:43 +03:00
2023-02-18 18:22:02 -06:00
2023-07-22 16:46:59 +02:00
2023-09-05 17:56:30 +03:00
2023-06-06 17:11:19 +01:00
2023-04-24 22:35:52 +00:00
2022-08-01 18:02:09 +02:00
2023-09-02 07:45:34 +03:00
2023-09-05 17:56:30 +03:00
2023-08-24 23:55:30 +02:00
2023-08-29 15:46:46 +00:00
2023-09-02 07:45:34 +03:00
2023-08-24 20:09:23 +02:00
2022-12-23 14:17:24 -06:00
2022-11-03 17:53:25 +01:00
2022-01-11 11:15:42 -08:00
2023-04-27 10:27:27 -06:00
2023-08-26 15:24:16 +05:30
2023-04-11 11:53:06 +01:00
2023-09-05 17:56:30 +03:00
2022-11-03 19:27:27 +01:00
2023-07-24 13:14:56 -07:00
2023-09-06 17:34:31 +02:00
2022-10-18 17:52:31 +02:00
2023-08-22 08:41:50 +01:00
2023-03-08 11:45:38 +00:00
2023-09-02 07:45:34 +03:00
2023-09-06 15:54:59 +00:00
2022-09-11 09:51:23 +02:00
2022-11-30 07:58:20 +09:00
2023-05-24 09:59:18 +00:00
2023-09-04 15:46:00 +02:00
2023-08-07 14:11:39 +03:00
2023-09-05 21:59:40 +00:00
2022-12-29 14:41:39 -08:00
2022-04-07 09:22:47 +02:00
2023-01-11 16:03:31 +05:30
2023-08-17 09:19:07 -07:00
2022-07-27 20:28:06 +02:00
2023-07-01 22:27:18 +00:00
2022-05-08 17:10:11 +03:00
2023-09-05 21:01:23 +01:00
2023-09-02 07:45:34 +03:00
2023-09-02 07:45:34 +03:00
2023-08-31 18:33:34 +02:00
2021-10-13 18:12:48 +02:00
2021-09-12 13:27:50 +03:00
2023-09-01 01:18:15 -07:00
2023-08-21 13:52:37 +00:00
2023-06-05 06:07:17 -07:00
2023-09-05 13:46:17 +00:00
2023-07-26 16:34:15 +01:00
2023-08-16 06:30:03 -07:00
2023-08-03 14:19:24 +00:00
2023-09-01 13:57:25 -07:00
2022-12-11 18:44:29 -05:00
2022-08-13 21:56:08 +02:00
2022-05-25 15:57:26 +02:00
2023-09-02 07:45:34 +03:00
2022-06-13 16:56:03 +02:00
2021-09-20 11:36:57 +03:00
2022-04-17 14:04:29 -04:00
2023-09-05 21:01:23 +01:00
2023-06-09 12:50:31 +00:00
2023-04-25 18:02:27 -07:00
2023-09-05 17:56:30 +03:00
2022-05-23 10:39:57 +02:00
2023-06-06 21:17:45 +00:00
2023-09-05 17:56:30 +03:00
2023-05-17 01:49:20 -07:00
2023-05-23 17:11:29 +03:00
2022-04-09 09:54:54 +09:00
2023-07-10 16:29:03 -04:00
2023-09-02 07:45:34 +03:00
2022-06-16 13:44:58 +02:00
2022-06-16 13:44:58 +02:00
2023-05-31 12:09:41 +00:00
2023-09-02 07:45:34 +03:00
2022-04-06 20:00:14 +03:00
2023-04-04 17:00:03 +01:00
2021-10-05 13:17:13 +01:00
2023-04-17 12:30:48 -06:00
2022-05-22 18:54:24 -07:00
2023-03-31 11:23:02 +01:00
2023-03-08 11:45:38 +00:00
2021-10-06 16:13:48 -07:00
2023-09-04 13:04:32 +03:00
2023-09-04 13:04:32 +03:00
2023-09-05 17:56:30 +03:00
2022-02-02 07:03:10 -08:00
2022-06-23 16:48:28 -07:00
2022-06-06 19:24:11 +02:00
2023-03-08 11:45:38 +00:00
2023-07-07 22:02:13 +00:00
2023-08-25 12:37:27 +03:00
2023-04-12 23:17:36 -05:00