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 | hacking on TLS is fun, way more fun than arguing over petty shit, turns out
danchr_ has quit [Remote host closed the connection]
danchr_ has joined #pypy
danchr_ is now known as danchr
Guest96 has joined #pypy
mattip has quit [Ping timeout: 260 seconds]
mattip has joined #pypy
lritter has joined #pypy
Julian has joined #pypy
<cfbolz> mattip: I think your commit is correct
<cfbolz> mattip: (I'll add a test for it though)
<cfbolz> mattip: the problem is that calling threading._after_fork from reinit_threads is that that is too late anyway
<cfbolz> reinit_threads runs *after* the user-defined fork hooks, destroying any daemon thread introduced by a user defined fork hook again
<mattip> cool, so the test would be in extra_tests and would make sure deamon threads are not destroyed?
<cfbolz> yes
<mattip> nice
<cfbolz> I can even write it as an app_test in module/posix
<mattip> those take so long to run. I tried getting all of the stdlib imports out of test_posix2 to speed things up
<mattip> i.e. using posix instead of os
<cfbolz> ok
<cfbolz> done
Julian has quit [Quit: leaving]
Atque has joined #pypy
ecarsten has joined #pypy
<ecarsten> Hi, is there a sensible way to reuse or cache pypy's JIT between runs? I'm working on a compiler that often takes seconds or even minutes to run for real-world programs, so pypy would likely help a lot, but my test suite contains hundreds of 0.5 second compiles of toy programs, and there a switch to pypy degrades performance.
<ecarsten> I *could* hack some sort of "compiler server" to reuse the same pypy process between runs, but that easily gets brittle, e.g. if global state accidentally leaks between invocations.
<tumbleweed> I think that's your best bet
<larstiq_> ecarsten: caching pypy's jit has been mused about, but that would be a bit of a pypy research project. If you want quicker results the "compiler server" seems the way to go (and a common pattern anyway)
<arigato> or refactor your compiler's code so that it is directly usable as a library, instead of only from the command line. Then you'd also be able to write some unit tests (as opposed to only functional tests)
jacob22 has quit [Ping timeout: 240 seconds]
<arigato> alternatively, nothing prevents you from invoking your compiler with CPython for most tests, but PyPy in a few of them and when run normally
jacob22 has joined #pypy
jacob22 has quit [Ping timeout: 245 seconds]
jacob22 has joined #pypy
jacob22 has quit [Ping timeout: 240 seconds]
Guest96 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Guest96 has joined #pypy
Guest96 has quit [Client Quit]
Guest96 has joined #pypy
danchr has quit [Read error: Connection reset by peer]
danchr_ has joined #pypy
jacob22 has joined #pypy
danchr_ is now known as danchr
greedom has joined #pypy
greedom has quit [Remote host closed the connection]
greedom has joined #pypy
greedom has quit [Remote host closed the connection]
greedom has joined #pypy
lritter has quit [Ping timeout: 256 seconds]
ecarsten has quit [Ping timeout: 256 seconds]
greedom has quit [Remote host closed the connection]
greedom has joined #pypy
greedom has quit [Remote host closed the connection]
Atque has quit [Quit: ...]
Guest96 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]