cfbolz changed the topic of #pypy to: #pypy PyPy, the flexible snake https://pypy.org | IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end and https://libera.irclog.whitequark.org/pypy | so many corner cases, so little time
lritter has quit [Quit: Leaving]
epony has joined #pypy
Corbin has quit [Ping timeout: 240 seconds]
Corbin has joined #pypy
mgorny has quit [Quit: No Ping reply in 60 seconds.]
mgorny has joined #pypy
<cfbolz> Graalpython also uses spawn as the default in multiprocessing
_whitelogger has joined #pypy
agronholm_ has joined #pypy
agronholm has quit [Ping timeout: 250 seconds]
agronholm_ is now known as agronholm
slav0nic has joined #pypy
saltrocklamp[m] has quit [Ping timeout: 250 seconds]
saltrocklamp[m] has joined #pypy
jryans has quit [Quit: Bridge terminating on SIGTERM]
graingert[m] has quit [Quit: Bridge terminating on SIGTERM]
the_drow has quit [Quit: Bridge terminating on SIGTERM]
saltrocklamp[m] has quit [Quit: Bridge terminating on SIGTERM]
jryans has joined #pypy
jryans has quit [Write error: Connection reset by peer]
jryans has joined #pypy
jryans has quit [Remote host closed the connection]
<ctismer> cfbolz: mattip: Mandelbrot works with PyPy! Speed factor 9-10.
jryans has joined #pypy
<mattip> whohoo! 9x in favor of CPython I assume?
the_drow has joined #pypy
graingert[m] has joined #pypy
saltrocklamp[m] has joined #pypy
<cfbolz> ctismer: ah, Mandelbrot in qt? Super nice!
<ctismer> mattip: Yes, unfair because PyPy 3.8 against Python 3.10
catern has joined #pypy
<ctismer> cfbolz: This was my initial goal when I started to think about PyPy last May.
<ctismer> This goal did not want to work, I fixed errors and errors. At last, there is a problem with mutexes. I commented them out and get crashes, but it works 🤣
Atque has quit [Quit: ...]
jryans has quit [Quit: Client limit exceeded: 20000]
<cfbolz> ctismer: oh,that's annoying
<cfbolz> Qt mutexes?
graingert[m] has quit [Quit: Client limit exceeded: 20000]
jryans has joined #pypy
graingert[m] has joined #pypy
<ctismer> yes, probably related to other things which don't work, yet.
saltrocklamp[m] has quit [Quit: Client limit exceeded: 20000]
the_drow has quit [Quit: Client limit exceeded: 20000]
saltrocklamp[m] has joined #pypy
the_drow has joined #pypy
Julian has joined #pypy
Julian has quit [Ping timeout: 256 seconds]
Julian has joined #pypy
Julian has quit [Client Quit]
<Cheery> so now I have it, but I feel I don't like the implementation after all.
<ctismer> So here we go, with a MacBook 2017 and 27" Non-retina screen
<ctismer> The question is, where the remaining factor of ~5.5 comes. Could this theoretically improved, still?
otisolsen70 has joined #pypy
otisolsen70_ has joined #pypy
otisolsen70 has quit [Ping timeout: 250 seconds]
otisolsen70_ has quit [Quit: Leaving]
<ctismer> cfbolz: Finally, the Qt mutex loking problem was that it uses a QMutexLocker. This function needs to be a context manager, again. Had that already with QPainter.
<cfbolz> ctismer: hehe, awesome
otisolsen70 has joined #pypy
otisolsen70_ has joined #pypy
otisolsen70 has quit [Ping timeout: 256 seconds]
<larstiq_> context manager ftw
otisolsen70__ has joined #pypy
otisolsen70_ has quit [Ping timeout: 252 seconds]
otisolsen70 has joined #pypy
otisolsen70__ has quit [Ping timeout: 256 seconds]
greedom has joined #pypy
otisolsen70_ has joined #pypy
otisolsen70 has quit [Ping timeout: 250 seconds]
otisolsen70 has joined #pypy
otisolsen70_ has quit [Ping timeout: 256 seconds]
otisolsen70_ has joined #pypy
otisolsen70 has quit [Ping timeout: 245 seconds]
<mattip> ctismer: I am confused. When I see 33 secs for pypy3 and 371 secs for python3 , it seems like pypy is faster?
<mattip> I think I want to refactor the way we generate function signatures in cpyext and the header files
<mattip> it is very difficult to synchronize the new functions in a cpython release since
<mattip> we cannot simply copy the header files:
<mattip> - they divide them into ./, ./cpython (for things that are non-public but used by i.e. cython) and ./internal (for things that are truly internal)
<mattip> - we divide them into ./, ./cpyext_* (for things we parse via pycparser and consume in cpyext)
<mattip> - we generate lots of function signatures in api.py, it is not obvious before translation wich ones will be generated
<mattip> it would be easier if we could use their headers, and api.py would make sure the signatures are the same
<mattip> then we could use more pure-c functions which would not be renamed by api.py
<mattip> we would have to tell api.py where the function should be found, and it could do a simple text comparison on the signature
greedom has quit [Remote host closed the connection]
<mattip> maybe for py3.10
greedom has joined #pypy
<ctismer> mattip: yes PyPy is 10 times faster. And Qt is 5.5 times faster than PyPy with the same algorithm.
<mattip> ahh, got it. Qt is a pure-qt solution, no python involved.
<mattip> this looks like the c++ version, where is the python one?
otisolsen70__ has joined #pypy
otisolsen70_ has quit [Ping timeout: 256 seconds]
otisolsen70__ has quit [Remote host closed the connection]
<ctismer> Yes, exactly
lritter has joined #pypy
Guest96 has joined #pypy
otisolsen70 has joined #pypy
greedom has quit []
otisolsen70 has quit [Quit: Leaving]
Atque has joined #pypy
Guest96 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
lritter has quit [Quit: Leaving]
Cheery has quit [Ping timeout: 240 seconds]
Cheery has joined #pypy
[Arfrever] has quit [Ping timeout: 256 seconds]
[Arfrever] has joined #pypy