Mark Shannon

Results 38 issues of Mark Shannon

Outputs such as "0% slower" or "1% faster" are unnecessarily vague. Is "1%" 0.5% or 1.5%?

As well as simple timings, it would be useful to have access to the stats generated by `perf`. Exactly what stats are available will depend very much on the hardware...

The acceptance notice for PEP 634 says: > We consider that the presence of such high-quality documentation must be present on the first release of Python 3.10, and therefore its...

We* are concerned about what 3.11 is doing to the performance of coverage.py. This is more of a CPython issue, but I'm hoping that the coverage.py folks can provide some...

performance

* Fixes crashes. * Documents change in behavior and recommends use of `Py_TPFLAGS_MANAGED_DICT` and `Py_TPFLAGS_MANAGED_WEAKREF` * Issue: gh-95589

awaiting core review

Currently `Py_TPFLAGS_MANAGED_DICT` is an internal-only flag, in fact setting in third-party code is likely to lead to a crash. We would like to expose it, and a weakref equivalent `Py_TPFLAGS_MANAGED_WEAKREFS`...

type-feature
performance
interpreter-core
3.12

Simplify and speed up interpreter for f-strings. tldr; Do work in the compiler instead of the interpreter. Splits the FORMAT_VALUE opcode into CONVERT_VALUE, FORMAT_SIMPLE and FORMAT_WITH_SPEC. The compiler can then...

awaiting review
stale

It is useful to be able to get stats from the various benchmark suites. Currently that involves making a custom branch with stats enabled, and benchmarking that. Since CPython's configure...

Please consider PEP 669 -- Low Impact Monitoring for CPython https://peps.python.org/pep-0669/ Discussed here: https://discuss.python.org/t/pep-669-low-impact-monitoring-for-cpython/13018 This PEP was also announced on Python dev, but there was no response there. The PEP...

PEP

Simplifies `RETURN_VALUE`, `RETURN_GENERATOR` and `YIELD_VALUE` as they no longer need to check if the current frame is the entry frame. Should allow specialization of `FOR_ITER` and `SEND` for generators and...

awaiting merge