Mark Shannon added the comment:
Don't you need to know if a "call" event is a call or the resumption of a
generator?
--
___
Python tracker
<https://bugs.pyt
Change by Mark Shannon :
--
pull_requests: +30439
pull_request: https://github.com/python/cpython/pull/32413
___
Python tracker
<https://bugs.python.org/issue40
New submission from Mark Shannon :
The 3 regular expression benchmarks in the pyperformance suite, regex_v8,
regex_effbot and regex_dna show slowdowns between 3% and 10%.
Looking at the stats, nothing seems wrong with specialization or the memory
optimizations.
Which strongly suggests a
Mark Shannon added the comment:
New changeset 6c6e0408a663c1f53dad403f54a18d444da39cb7 by Dennis Sweeney in
branch 'main':
bpo-47009: Let PRECALL_NO_KW_LIST_APPEND do its own POP_TOP (GH-32239)
https://github.com/python/cpython/commit/6c6e0408a663c1f53dad403f54a18d
Change by Mark Shannon :
--
keywords: +patch
pull_requests: +30367
stage: -> patch review
pull_request: https://github.com/python/cpython/pull/32304
___
Python tracker
<https://bugs.python.org/issu
Mark Shannon added the comment:
New changeset 8a349eb30b54bab9a7146fc10e3379c3cacaa19e by Mark Shannon in
branch 'main':
Revert "bpo-44800: Document internal frame naming conventions (GH-32281)"
(#32301)
https://github.com/python/cpython/commit/8a349eb30b54bab9a714
Change by Mark Shannon :
--
keywords: +patch
pull_requests: +30366
stage: needs patch -> patch review
pull_request: https://github.com/python/cpython/pull/32303
___
Python tracker
<https://bugs.python.org/issu
New submission from Mark Shannon :
We need to provide an API to create, swap and free frame stacks for greenlets.
Since this is primarily for greenlets (and any other stackful coroutines
libraries that want to use it) it will be "unstable".
In this case, by "unstable" I
Change by Mark Shannon :
--
pull_requests: +30363
pull_request: https://github.com/python/cpython/pull/32301
___
Python tracker
<https://bugs.python.org/issue44
Mark Shannon added the comment:
New changeset 997ba5d126f5040d5b7536f73bc89049e9f9421d by Irit Katriel in
branch 'main':
bpo-47172: Compiler enhancements (GH-32200)
https://github.com/python/cpython/commit/997ba5d126f5040d5b7536f73bc89049e9f9421d
--
nosy: +Ma
Mark Shannon added the comment:
New changeset 04e07c258f4f2ac85e25355242a113f98a706f04 by Irit Katriel in
branch 'main':
bpo-47186: Replace JUMP_IF_NOT_EXC_MATCH by CHECK_EXC_MATCH + jump (GH-32231)
https://github.com/python/cpython/commit/04e07c258f4f2ac85e25355242a113
Mark Shannon added the comment:
New changeset ae9de82e321581e1906c6ef2a7ad83ab30ae3325 by Brandt Bucher in
branch 'main':
bpo-46841: Use a `bytes` object for `_co_code_adaptive` (GH-32205)
https://github.com/python/cpython/commit/ae9de82e321581e1906c6ef2a7ad83
Mark Shannon added the comment:
New changeset bd2e47c8830d1b2869f2b4345945a5e0c3b4e3fb by Brandt Bucher in
branch 'main':
bpo-46841: Avoid unnecessary allocations in code object comparisons (GH-3)
https://github.com/python/cpython/commit/bd2e47c8830d1b2869f2b4345945a5
Mark Shannon added the comment:
New changeset a0ea7a116ce52a178c02d42b684089758bd7f355 by Dennis Sweeney in
branch 'main':
bpo-47009: Streamline list.append for the common case (GH-31864)
https://github.com/python/cpython/commit/a0ea7a116ce52a178c02d42b684089758bd7f355
-
Mark Shannon added the comment:
New changeset 74b95d86e0f14603f878c4df3133bc8a93f8f80a by Mark Shannon in
branch 'main':
bpo-40421: Add missing getters for frame object attributes to C-API. (GH-32114)
https://github.com/python/cpython/commit/74b95d86e0f14603f878c4df3133bc
Mark Shannon added the comment:
New changeset a00518d9ad9a8f408a9699191019d75dd8406c32 by Irit Katriel in
branch 'main':
bpo-47120: Replace the JUMP_ABSOLUTE opcode by the relative JUMP_BACKWARD
(GH-32115)
https://github.com/python/cpython/commit/a00518d9ad9a8f408a9699191019d7
Mark Shannon added the comment:
The problem in the example you give is the need for the cast in the first
place. If `func` were a `PyCFunctionObject *` instead of a `PyObject *`, then
there would be no cast.
Making the casts explicit serves as a reminder that a type check is needed
Mark Shannon added the comment:
I think that adding macros makes readability worse.
The macro is only more readable if you already know what it does.
If you don't, then you need to look up the macro, and understand the cast in
the macro (which is harder than understanding the original
Mark Shannon added the comment:
New changeset cca43b7d64f47ea921d0f7a347ae1a839c5463c3 by Dennis Sweeney in
branch 'main':
bpo-47053: Reduce deoptimization in BINARY_OP_INPLACE_ADD_UNICODE (GH-31318)
https://github.com/python/cpython/commit/cca43b7d64f47ea921d0f7a347ae1a
Change by Mark Shannon :
--
pull_requests: +30190
pull_request: https://github.com/python/cpython/pull/32114
___
Python tracker
<https://bugs.python.org/issue40
Mark Shannon added the comment:
New changeset d7163bb35d1ed46bde9affcd4eb267dfd0b703dd by Mark Shannon in
branch 'main':
bpo-42197: Don't create `f_locals` dictionary unless we actually need it.
(GH-32055)
https://github.com/python/cpython/commit/d7163bb35d1ed46bde9affcd4
Mark Shannon added the comment:
With the introduction of zero cost exceptions, there is no block stack.
--
resolution: -> out of date
stage: patch review -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
Change by Mark Shannon :
--
pull_requests: +30147
pull_request: https://github.com/python/cpython/pull/32055
___
Python tracker
<https://bugs.python.org/issue42
Change by Mark Shannon :
--
pull_requests: +30145
pull_request: https://github.com/python/cpython/pull/32055
___
Python tracker
<https://bugs.python.org/issue42
Mark Shannon added the comment:
I'm looking into adding two new APIs.
One to round out the getters for FrameObject and one to introspect the internal
frame stack.
It would probably make more sense to add this capability to the frame stack
API, as it would avoid creating the frame obje
Mark Shannon added the comment:
I think this is fixed (for 3.11 at least) by
https://github.com/python/cpython/pull/31888
--
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
New changeset 49daf6dba8178c5ae5d4d65408b20566d39c36a8 by Mark Shannon in
branch 'main':
bpo-47045: Remove `f_state` field (GH-31963)
https://github.com/python/cpython/commit/49daf6dba8178c5ae5d4d65408b205
Mark Shannon added the comment:
The `JUMP_ABSOLUTE` doesn't have a line number, as it doesn't correspond to any
source.
The jump back to the top could follow either the `if i >= 0:` or the `pass`, so
cannot have a line number.
Don't expect every bytecode to map directly
Mark Shannon added the comment:
You are on own if you create code objects by calling `types.CodeType`.
The docs could be a lot clearer about that, though.
--
___
Python tracker
<https://bugs.python.org/issue45
Mark Shannon added the comment:
New changeset 2bde6827ea4f136297b2d882480b981ff26262b6 by Brandt Bucher in
branch 'main':
bpo-46841: Quicken code in-place (GH-31888)
https://github.com/python/cpython/commit/2bde6827ea4f136297b2d882480b98
Change by Mark Shannon :
--
keywords: +patch
pull_requests: +30052
stage: -> patch review
pull_request: https://github.com/python/cpython/pull/31963
___
Python tracker
<https://bugs.python.org/issu
New submission from Mark Shannon :
When tracing, the event supplied is insufficient to determine what is actually
happening.
E.g. A "call" event could be a call to a function or resuming a generator or
coroutine.
Adding a state field to the FrameObject would allow these c
New submission from Mark Shannon :
The RESUME instruction was added to make resumption points explicit in the
bytecode. This makes it easier to implement tracing, quickening, and interrupt
checks as there is an explicit place to perform these checks.
Unfortunately, it also has considerable
Change by Mark Shannon :
--
resolution: -> fixed
stage: patch review -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
Change by Mark Shannon :
--
pull_requests: +30025
pull_request: https://github.com/python/cpython/pull/31933
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
New changeset 099f75614100e88ed90b68d20a51a8d9c22f81a7 by Mark Shannon in
branch 'main':
bpo-45923: Decouple suspension of tracing from tracing flag. (GH-31908)
https://github.com/python/cpython/commit/099f75614100e88ed90b68d20a51a8
Mark Shannon added the comment:
sys.settrace line events cannot use the co_lines table. They need additional
state, as we don't want to trace the same line twice (unless there is a
backwards jump).
Using the start of a entry in `co_lines` doesn't work when some entries have no
l
Mark Shannon added the comment:
Let me give you an example.
#module eggs
eggs_var = 0 # a variable, maybe a counter or similar
EGGS_CONST # a constant
#module spam
import eggs
spam_var # Another variable
def foo():
use(eggs.EGGS_CONST)
-
We will want to treat
Change by Mark Shannon :
--
pull_requests: +30001
pull_request: https://github.com/python/cpython/pull/31908
___
Python tracker
<https://bugs.python.org/issue45
Change by Mark Shannon :
--
pull_requests: +29996
pull_request: https://github.com/python/cpython/pull/31901
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
New changeset 304197b3820309e3ed695ff3e6a71461881a1728 by Kumar Aditya in
branch 'main':
bpo-46944: use FASTCALL calling convention in generator.throw (GH-31723)
https://github.com/python/cpython/commit/304197b3820309e3ed695ff3e6a714
Mark Shannon added the comment:
Another use of this is to add watch points in debuggers.
To that end, it would better if the callback were a Python object.
The overhead is relatively small if using the vectorcall protocol.
If the call overhead matters that much, there is something wrong as
Mark Shannon added the comment:
You might not like global variables, they may not show up much in benchmarks,
but people do use them. I suspect a lot of jupyter notebooks have quite a few
global variables.
There should not be much of a slowdown for this code when watching `CONST`:
CONST
Change by Mark Shannon :
--
pull_requests: +29915
pull_request: https://github.com/python/cpython/pull/31817
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
There are three kinds of changes that we might want to watch (that I can think
of right now):
1. Any change.
Rather coarse and potentially expensive. Used by Cinder.
2. A new key being added (or a change to the keys version as a proxy).
Useful for detect
Mark Shannon added the comment:
New changeset 5498a61c7c25db6f9e76032aa9c5153d79e09889 by Brandt Bucher in
branch 'main':
bpo-46841: Don't use an oparg counter for `STORE_SUBSCR` (GH-31742)
https://github.com/python/cpython/commit/5498a61c7c25db6f9e76032aa
Mark Shannon added the comment:
Serhiy, what is the advantage of __import__ being slower?
Not counting the argument clinic generated code, the PR doesn't add any code
and improves the docstring.
--
___
Python tracker
<https://bugs.py
Mark Shannon added the comment:
I don't think this needs to block the alpha release
--
priority: release blocker -> deferred blocker
___
Python tracker
<https://bugs.python.org
Mark Shannon added the comment:
Ronald, does PR 31658 fix your issue?
--
stage: patch review ->
___
Python tracker
<https://bugs.python.org/issue46903>
___
_
Change by Mark Shannon :
--
stage: resolved ->
___
Python tracker
<https://bugs.python.org/issue46389>
___
___
Python-bugs-list mailing list
Unsubscrib
New submission from Mark Shannon :
https://github.com/python/steering-council/issues/102 (definitely not PEP 651
;))
We should implement efficient stack checks on those platforms that allow us to
introspect stack extents.
Windows and posix systems allow us to do this.
C allows addresses of
Mark Shannon added the comment:
Why so coarse?
Getting a notification for every change of a global in module, is likely to
make use the use of global variables extremely expensive.
```
var = 0
CONST = 1
def foo(...):
...
```
I may well want to be notified if `foo` or `CONST` gets
Change by Mark Shannon :
--
resolution: -> fixed
stage: patch review -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
Mark Shannon added the comment:
New changeset 586b24d3be1aec5d2568b070a249b4d75e608782 by Brandt Bucher in
branch 'main':
bpo-46841: Fix error message hacks in `GET_AWAITABLE` (GH-31664)
https://github.com/python/cpython/commit/586b24d3be1aec5d2568b070a249b4
Mark Shannon added the comment:
This is an API change.
I agree that the API is not what it should be, but we can't change it without
breaking an unknown amount of 3rd party code that uses it.
--
nosy: +Mark.Shannon
___
Python tracker
&
Mark Shannon added the comment:
This is a bit of a tricky one.
The problem is that the line number for an instruction is used for two purposes.
1. To calculate the line number in frame.f_lineno for tracebacks and events
2. By dis to determine which lines are present and where they start.
If
Mark Shannon added the comment:
New changeset 03c2a36b2bd2d4469160d1607619ee144175d753 by Mark Shannon in
branch 'main':
bpo-46903: Handle str-subclasses in virtual instance dictionaries. (GH-31658)
https://github.com/python/cpython/commit/03c2a36b2bd2d4469160d1607619ee
Mark Shannon added the comment:
Which debugger? Which version of Python?
Please provide all the steps required to reproduce, otherwise there is little
we can do.
--
nosy: +Mark.Shannon
___
Python tracker
<https://bugs.python.org/issue46
Change by Mark Shannon :
--
resolution: -> fixed
stage: -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.org/issue46389>
___
Change by Mark Shannon :
--
pull_requests: +29777
pull_request: https://github.com/python/cpython/pull/31659
___
Python tracker
<https://bugs.python.org/issue46
Change by Mark Shannon :
--
resolution: -> fixed
stage: patch review -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
Change by Mark Shannon :
--
keywords: +patch
pull_requests: +29776
stage: -> patch review
pull_request: https://github.com/python/cpython/pull/31658
___
Python tracker
<https://bugs.python.org/issu
Mark Shannon added the comment:
Ned, is this fixed for you now?
--
___
Python tracker
<https://bugs.python.org/issue46389>
___
___
Python-bugs-list mailin
Change by Mark Shannon :
--
resolution: -> fixed
stage: patch review -> resolved
status: open -> closed
___
Python tracker
<https://bugs.python.or
Mark Shannon added the comment:
New changeset 751c9ed801ad1189272ca10f0749bfc9d49b5038 by Mark Shannon in
branch 'main':
bpo-46891: Fix creating a new instance of a module subclass with slots
(GH-31643)
https://github.com/python/cpython/commit/751c9ed801ad1189272ca10f0749bf
Mark Shannon added the comment:
It's not an UNPACK_SEQUENCE slowdown, it's a silly benchmark ;)
https://github.com/python/pyperformance/blob/main/pyperformance/data-files/benchmarks/bm_unpack_sequence/run_benchmark.py#L6
What I *think* is happening is that the inline cache takes t
Mark Shannon added the comment:
Good to know, although "deferred blocker" is somewhat vague about when it is
deferred until.
OOI, does it become a "blocker" again once you've done the alpha release, or
what stops it being deferred past the beta
Change by Mark Shannon :
--
keywords: +patch
pull_requests: +29763
stage: needs patch -> patch review
pull_request: https://github.com/python/cpython/pull/31643
___
Python tracker
<https://bugs.python.org/issu
Mark Shannon added the comment:
Dennis, thanks for bisecting this.
--
___
Python tracker
<https://bugs.python.org/issue46891>
___
___
Python-bugs-list mailin
Change by Mark Shannon :
--
assignee: -> Mark.Shannon
___
Python tracker
<https://bugs.python.org/issue46891>
___
___
Python-bugs-list mailing list
Unsubscrib
Mark Shannon added the comment:
We should be done with this by early next week, if you can wait.
--
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
Is there some way to mark something as not blocking an alpha release, but
blocking a beta release?
Everything is working at the moment, but not so efficiently.
--
___
Python tracker
<https://bugs.python.
Mark Shannon added the comment:
I've outlined the requirements for a frame stack API at
https://github.com/faster-cpython/ideas/issues/309.
The problem with adding an API for PyFrameObject (beyond simple getters) is
that it makes assumptions about the frame stack that aren't valid
Mark Shannon added the comment:
New changeset 3b0f1c5a710eff289dc44bec972dbaea353cc54f by Mark Shannon in
branch 'main':
bpo-46841: Use inline cache for `BINARY_SUBSCR`. (GH-31618)
https://github.com/python/cpython/commit/3b0f1c5a710eff289dc44bec972dba
Mark Shannon added the comment:
New changeset c60e6b6ad7aaf9c72035ff9fb1575e2710aeb4b4 by Mark Dickinson in
branch 'main':
bpo-46311: Clean up PyLong_FromLong and PyLong_FromLongLong (GH-30496)
https://github.com/python/cpython/commit/c60e6b6ad7aaf9c72035ff9fb1575e
Mark Shannon added the comment:
New changeset 7820a5897e7762df23bff1cbe749652130654a08 by Brandt Bucher in
branch 'main':
bpo-46841: Use inline caching for `COMPARE_OP` (GH-31622)
https://github.com/python/cpython/commit/7820a5897e7762df23bff1cbe74965
Change by Mark Shannon :
--
pull_requests: +29743
pull_request: https://github.com/python/cpython/pull/31618
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
New changeset 4558af5a8f8e56a9b0dc11f6e834c47e0fd05f9e by Mark Shannon in
branch 'main':
bpo-46841: Move the cache for `LOAD_GLOBAL` inline. (GH-31575)
https://github.com/python/cpython/commit/4558af5a8f8e56a9b0dc11f6e834c4
Mark Shannon added the comment:
New changeset 424ecab494d538650ba34937cdd710094ccb2275 by Brandt Bucher in
branch 'main':
bpo-46841: Use inline caching for `UNPACK_SEQUENCE` (GH-31591)
https://github.com/python/cpython/commit/424ecab494d538650ba34937cdd710
Change by Mark Shannon :
--
pull_requests: +29697
pull_request: https://github.com/python/cpython/pull/31575
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
New changeset c579243eb62d3182c84004cd72dcf6ef59100643 by Irit Katriel in
branch 'main':
bpo-46808: remove NEXT_BLOCK() from compile.c (GH-31448)
https://github.com/python/cpython/commit/c579243eb62d3182c84004cd72dcf6ef59100643
--
nosy: +Ma
Change by Mark Shannon :
--
priority: normal -> release blocker
___
Python tracker
<https://bugs.python.org/issue46841>
___
___
Python-bugs-list mai
Mark Shannon added the comment:
Making this a release blocker, as we really cannot leave this half finished for
the release.
Shouldn't be a problem, as we'll have it done in a week or so.
--
___
Python tracker
<https://bugs.python.o
Mark Shannon added the comment:
New changeset 0f41aac109c45aa468c432f798947c54d4178b3d by Brandt Bucher in
branch 'main':
bpo-46841: Use *inline* caching for `BINARY_OP` (GH-31543)
https://github.com/python/cpython/commit/0f41aac109c45aa468c432f798947c
Mark Shannon added the comment:
Stefan,
f_lineno can be None for some opcodes, but there shouldn't be trace events if
it is.
E.g.
>>> def f():
... try:
... 1/0
... finally:
... pass
...
>>> list(f.__code__.co_lines())
[(0, 2, 1), (2, 4, 2),
Mark Shannon added the comment:
New changeset 2a6ece572ca38f989fca66f4c053cb16550bccd4 by Mark Shannon in
branch 'main':
bpo-45107: Specialize `LOAD_METHOD` for instances with dict. (GH-31531)
https://github.com/python/cpython/commit/2a6ece572ca38f989fca66f4c053cb
Mark Shannon added the comment:
New changeset a52d2528a405c1e2bfeb6470cb3313a5338dc45f by Dennis Sweeney in
branch 'main':
bpo-46823: Implement LOAD_FAST__LOAD_ATTR_INSTANCE_VALUE superinstruction
(GH-31484)
https://github.com/python/cpython/commit/a52d2528a405c1e2bfeb6470cb3313
Change by Mark Shannon :
--
pull_requests: +29673
pull_request: https://github.com/python/cpython/pull/31552
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
We need to decide what to do about dis.
I don't think we should have a `show_cache` option, as the caches are
meaningless junk without quickening (maybe we should drop the CACHE opcode, and
just use zeroes).
Instead we should have a `show_quickened` o
Change by Mark Shannon :
--
nosy: +Mark.Shannon
nosy_count: 1.0 -> 2.0
pull_requests: +29655
pull_request: https://github.com/python/cpython/pull/31531
___
Python tracker
<https://bugs.python.org/issu
Mark Shannon added the comment:
New changeset 375a56bd4015596c0cf44129c8842a1fe7199785 by Brandt Bucher in
branch 'main':
bpo-45885: Don't un-adapt `COMPARE_OP` when collecting stats (GH-31516)
https://github.com/python/cpython/commit/375a56bd4015596c0cf44129c
Mark Shannon added the comment:
New changeset 424023efee5b21567b4725015ef143b627112e3c by Brandt Bucher in
branch 'main':
bpo-46329: Fix test failure when `Py_STATS` is enabled (GH-31511)
https://github.com/python/cpython/commit/424023efee5b21567b4725015ef143
Change by Mark Shannon :
--
pull_requests: +29626
pull_request: https://github.com/python/cpython/pull/31496
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
New changeset 59585d6b2ea50d7bc3a9b336da5bde61367f527c by Mark Shannon in
branch 'main':
bpo-46329: Streamline calling sequence a bit. (GH-31465)
https://github.com/python/cpython/commit/59585d6b2ea50d7bc3a9b336da5bde
New submission from Mark Shannon :
Computing whether an instruction is the first on a line (for tracing) in the
interpreter is complicated and slow. Doing it in the compiler should be simpler
and has no runtime cost.
Currently we decide if the current instruction is the first on a line, by
Change by Mark Shannon :
--
pull_requests: +29595
pull_request: https://github.com/python/cpython/pull/31465
___
Python tracker
<https://bugs.python.org/issue46
Mark Shannon added the comment:
New changeset cf345e945f48f54785799390c2e92c5310847bd4 by Mark Shannon in
branch 'main':
bpo-46329: Change calling sequence (again) (GH-31373)
https://github.com/python/cpython/commit/cf345e945f48f54785799390c2e92c
Mark Shannon added the comment:
New changeset e2c28616ce6c3cdb1013c415125220a0b86b86a1 by Nikita Sobolev in
branch 'main':
bpo-46709: check eval breaker in specialized `CALL` opcodes (GH-31404)
https://github.com/python/cpython/commit/e2c28616ce6c3cdb1013c415125220
Mark Shannon added the comment:
New changeset c3ce7781e3afe6f2dec5eef8e87fd5a664519ae9 by Saul Shanabrook in
branch 'main':
bpo-46724: Fix dis support for overflow args (GH-31285)
https://github.com/python/cpython/commit/c3ce7781e3afe6f2dec5eef8e87fd5
Change by Mark Shannon :
--
nosy: +brandtbucher, iritkatriel
___
Python tracker
<https://bugs.python.org/issue46760>
___
___
Python-bugs-list mailing list
Unsub
1 - 100 of 1001 matches
Mail list logo