greedom has quit [Remote host closed the connection]
glyph has quit [Quit: End of line.]
glyph has joined #pypy
hynek has joined #pypy
Atque is now known as hammond
hammond is now known as Atque
mjacob has quit [*.net *.split]
habnabit has quit [*.net *.split]
danchr has quit [*.net *.split]
marmoute has quit [*.net *.split]
marmoute has joined #pypy
danchr_ has joined #pypy
mjacob has joined #pypy
habnabit_ has joined #pypy
nimaje has quit [*.net *.split]
indyZ has quit [*.net *.split]
indyZ has joined #pypy
nimaje has joined #pypy
marmoute has quit [Ping timeout: 256 seconds]
marmoute has joined #pypy
Guest96 has joined #pypy
Guest96 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Guest96 has joined #pypy
greedom has joined #pypy
indyZ has quit [Changing host]
indyZ has joined #pypy
<cfbolz>
Snow, snow!
otisolsen70 has joined #pypy
<arigo>
mattip: re Hao Wang: the error message is 15 lines long, I'm not sure how I can explain better what it means. It really means what it says, i.e. that pandas._libs.parsers.TextReader is potentially bogus and should be fixed in the C code
<arigo>
the error is exactly that the C code of pandas calls a generic PyXxx function from a tp_dealloc, which is bad because of the reasons written there. There is no need for the OP to show any more code
<arigo>
nor is there any way for the OP to write code differently
<arigo>
cfbolz, fijal: I don't remember merging (or even looking) at any of the M1 patches
<cfbolz>
Ah, 'I didn't look at the patches in detail' further down
<cfbolz>
Right
<arigo>
exactly: I looked and thought "uh it might be better done that way instead" and wrote it down, but didn't do anything more
<cfbolz>
Fair
<arigo>
re Slow function call with float and None (#3598), we can decide to write a short preamble to a random place even if that means adding guards that are wrong right now?
<cfbolz>
arigo: yes, we can
<cfbolz>
But what we should not do is move those wrong guards earlier in the bridge
<cfbolz>
Because then we can get bridges that basically make no progress at all
<fijal>
arigo: ok cool
<arigo>
shouldn't we check that we're writing sensible guards for the short preamble? we have the objects around at the moment, no?
<cfbolz>
arigo: then we would need a 'short preamble executor' that goes through the short preamble and runs it on the real objects?
<arigo>
yes
<cfbolz>
Right
<cfbolz>
arigo: my intermediate fix is, I disabled guard strengthening when emitting short preamble ops
<arigo>
throw it to the blackhole interpreter and check if a guard fail, something like that
<cfbolz>
Right
<arigo>
short preambles have no side effects, right?
<cfbolz>
Yup
<cfbolz>
arigo: note also that we have a component like this already, virtualstate
<cfbolz>
It does matching, takes runtime values into account
<arigo>
disabling guard strengthening might be good enough
<cfbolz>
So a possible refactoring would be to integrate short preamble capabilities into virtualstate
<arigo>
I'm not sure we measured if it makes a real difference anyway
<arigo>
in general
<arigo>
but it compresses the traces resume info, I think
<cfbolz>
Guard strengthening? It helps for very small loops
<arigo>
OK, so I guess it's not that bad if we disable it in one case
<cfbolz>
Agreed
<cfbolz>
arigo: there's a bit of a general pattern in which we realize that small loops don't really matter all that much 😅
<fijal>
haha, yep
<cfbolz>
funnily enough, the JS VMs have been going through that same cycle
<arigo>
we might even disable some of the guard strengthening that occurs normally, like if the older guard is too far behind
<arigo>
because that might fail even though the whole portion of code between the two locations would still be fine
<fijal>
cfbolz: because microbenchmarks have small loops
greedom has quit [Remote host closed the connection]
<mattip>
arigo: pandas would be more likely to fix the issue if we can provide a reproducer
<mattip>
they are using cython, so probably non-trivial to find exactly where the call is happening
<cfbolz>
nice, test_sys_settrace went from 44 failures to 3
greedom has joined #pypy
wleslie has quit [Quit: ~~~ Crash in JIT!]
Guest96 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
otisolsen70_ has joined #pypy
otisolsen70 has quit [Ping timeout: 264 seconds]
otisolsen70_ has quit [Read error: Connection reset by peer]
Atque has quit [Quit: ...]
Guest96 has joined #pypy
Julian has joined #pypy
x88x88x has joined #pypy
x88x88x has quit [Read error: Connection reset by peer]
greedom has quit [Remote host closed the connection]
x88x88x has joined #pypy
x88x88x has quit [Remote host closed the connection]