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?