Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2016-02-03

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:44 vendethiel joined #moarvm
01:27 vendethiel joined #moarvm
03:05 vendethiel joined #moarvm
04:38 vendethiel joined #moarvm
04:54 vendethiel joined #moarvm
06:57 vendethiel joined #moarvm
07:00 domidumont joined #moarvm
07:05 domidumont joined #moarvm
07:15 zakharyas joined #moarvm
07:19 FROGGS[mobile]2 joined #moarvm
07:25 vendethiel joined #moarvm
07:40 flaviusb joined #moarvm
07:53 vendethiel joined #moarvm
07:56 FROGGS joined #moarvm
08:10 Ven joined #moarvm
08:19 zakharyas1 joined #moarvm
08:40 timotimo i find in my thoughts about game development + perl6 that an op like force_gc that lets you specify a threshold for "if the nursery is at least this full, do the GC run" would be nice to have
08:42 timotimo so you could put it at the beginning of your main loop when basically every piece of "work" relating to a frame has been done and all temporary stuff has hopefully become garbage, and if you find a good ratio, you'll end up with nice short GC cycles (not too many roots, because the call stack is so flat, and the loop body has only just been re-entered) that may fit better into "wait for vsync"
08:43 timotimo (but at this point, really good framerates are hard to reach with complicated code anyway)
09:38 brrt joined #moarvm
09:38 brrt \o
09:38 timotimo o/
09:39 brrt hmm, i figured out on the bus why the tiler-linearised compiler fails
09:40 brrt basically, i don't deal with stuff like copy and 'immortals' anymore
09:40 brrt (i'm thinking of calling them divine rather than immortal
09:40 leont joined #moarvm
09:40 brrt because, omnipresent and never expiring
09:40 brrt \o leont
09:40 timotimo oh
09:40 leont o/
09:40 timotimo a revelation!
09:42 brrt anyway, i should probably try what happens if i restore these, before i continue on with the offline register allocator
09:43 timotimo sure
09:44 brrt which, by the way, will deal with all that in quite a different maner
09:45 timotimo oh, hmm
09:45 brrt my next presentation will be thus: 'MoarVM JIT is open for hacking'
09:45 timotimo ooooooh
09:45 brrt which means i have to fix them issues first, of course
09:45 timotimo when is that going to happen? :) :)
09:46 brrt after my thesis is done, that's for sure
09:46 timotimo mhm
09:46 timotimo yeah, that makes sense, definitely
09:46 brrt but, i kind of designed the thing for hackability, right, so it would be wasteful if i didn't at least advertise it
09:47 timotimo sure :D
09:49 moritz brrt: coming to GPW2016? :-)
09:49 brrt no, not likely, that will be in march right?
09:49 brrt *maybe* to NLPW
09:50 moritz yes, March
09:51 brrt hmmm....  'fraid to say no :-(
09:51 timotimo gaaarrrgh, i still haven't done any preparation for GPW at all
09:51 timotimo no hotel booked, no entry fee paid, no talk topic come-up-withed
09:52 brrt still possible talk slots?
09:52 brrt well, you could talk about the inner details of spesh if you wished :-)
09:52 brrt i think you know a  lot about that
09:53 moritz yes, there are still a few slots
09:54 moritz (and we have the option to use two rooms on one or two days, so a bit of flexibility too)
09:55 brrt lots of things to do
09:55 brrt hey, i might even have a somewhat better topic for you timotimo :-)
09:55 brrt depends of course what you think of it yourself
09:56 brrt you maintain the perl6 weekly, right?
09:56 timotimo oh?
09:56 timotimo uh
09:56 timotimo well ... i try
09:56 timotimo not too much success in the recent weeks, though
09:56 brrt well, that gives you a unique overview of activity in perl6-land
09:56 brrt i think that could be a topic of interest
09:56 moritz or you could talk about the experience of running that blog, what kinds of feedback you get etc.
09:57 brrt lots of folks are talking about progress, stability, infrastructure
09:57 brrt that, too
09:57 brrt but by just running that blog, you can basically compare the state of affairs say, january 2015 with january 2016 :-)
09:58 brrt anyway
09:58 brrt just a suggestion, no pressure intended :-)
10:09 vendethiel joined #moarvm
10:11 cognominal joined #moarvm
10:37 vendethiel joined #moarvm
11:10 domidumont joined #moarvm
11:13 Ven joined #moarvm
11:26 vendethiel joined #moarvm
11:54 FROGGS joined #moarvm
11:57 brrt joined #moarvm
12:25 vendethiel joined #moarvm
12:38 Ven joined #moarvm
12:50 vendethiel joined #moarvm
13:54 vendethiel joined #moarvm
14:23 vendethiel joined #moarvm
15:12 vendethiel joined #moarvm
15:23 Ven joined #moarvm
15:29 Ven joined #moarvm
15:52 vendethiel joined #moarvm
16:16 vendethiel joined #moarvm
16:39 vendethiel joined #moarvm
17:06 vendethiel joined #moarvm
17:39 vendethiel joined #moarvm
18:00 timotimo hmm
18:03 leont joined #moarvm
18:03 vendethiel joined #moarvm
18:08 timotimo a little "for $f.lines { $ccount += $_.chars; $lcount += 1; }" only inlines the .chars, not the addition operators ;(
18:08 timotimo (not natively typed $ccount and $lcount
18:08 domidumont joined #moarvm
18:09 timotimo but if i typed them native int, they'd most probably completely prevent inlining because of the intlexref problem)
18:16 timotimo in the profile, infix:<+> only accounts for 3.35% of inclusive as well as exclusive time, but i expect the overhead of invoking it twice per loop is noticable
18:16 * timotimo tries without adding stuff
18:19 timotimo yeah, with only = instead of += the exclusive time spent in that <anon> goes down to 2.91% from 20.5%
18:26 patrickz joined #moarvm
18:34 FROGGS joined #moarvm
18:53 vendethiel joined #moarvm
19:22 vendethiel joined #moarvm
19:32 timotimo actually, with native ints, the whole things takes slightly less time
19:37 timotimo but - as expected - it doesn't inline the + calls there either
19:38 timotimo and it runs 2x as many GCs as the one with "Int" rather than "int"
19:40 leont joined #moarvm
20:01 donaldh joined #moarvm
21:32 dalek MoarVM: a98eecc | jnthn++ | src/spesh/candidate.c:
21:32 dalek MoarVM: Missing free of spesh graphs.
21:32 dalek MoarVM:
21:32 dalek MoarVM: If we ended up destorying the spesh candidate before work on it
21:32 dalek MoarVM: completed, we'd leak the graph.
21:32 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/a98eecc96c
21:32 dalek MoarVM: b6c9af3 | jnthn++ | src/6model/reprs/SCRef.c:
21:32 dalek MoarVM: Free SC root objects when freeing SC.
21:32 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/b6c9af33df
21:37 dalek MoarVM: 7c9d32d | jnthn++ | src/core/threadcontext.c:
21:37 dalek MoarVM: Free per-thread NFA evaluation memory.
21:37 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/7c9d32dba8
21:41 dalek MoarVM: bffdbf3 | jnthn++ | src/core/threadcontext.c:
21:41 dalek MoarVM: Free per-thread lexotic cache.
21:41 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/bffdbf3d7f
21:46 dalek MoarVM: f6e5da9 | jnthn++ | src/core/callsite.c:
21:46 dalek MoarVM: Missing free of arg_names when interning.
21:46 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f6e5da9f0a
21:52 dalek MoarVM: e6b527d | jnthn++ | src/6model/reprs/SCRef.c:
21:52 dalek MoarVM: Free deserialization work index lists.
21:52 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/e6b527d93f
21:54 jnthn With --full-cleanup, nqp -e "say(1)" now exits with less than 10KB lost (as opposed to around 350KB before those patches)
21:58 hoelzro jnthn++
22:00 jnthn At the moment it's near impossible to distinguish real leaks from incomplete cleanups, and most of the above are leaks that could come up with EVAL or creating/tearing down lots of threads anyway.
22:05 vendethiel joined #moarvm
22:09 jnthn Enough for today. 'night o/
22:26 nebuchadnezzar joined #moarvm
23:17 japhb jnthn++  # Plugging leaks, especially leaks that are worse under high concurrency/churn
23:17 vendethiel joined #moarvm
23:47 vendethiel joined #moarvm

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary