Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2016-09-20

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

All times shown according to UTC.

Time Nick Message
00:09 japhb ISTR brrt saying he didn't want to merge until he had a better register allocator in place and tested
01:04 TimToady ISTR the same
01:34 _longines joined #moarvm
01:48 ilbot3 joined #moarvm
01:48 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
05:59 domidumont joined #moarvm
06:02 domidumont joined #moarvm
06:53 domidumont joined #moarvm
07:07 dalek MoarVM/even-moar-jit: 64af682 | brrt++ | src/m (2 files):
07:07 dalek MoarVM/even-moar-jit: Enable the expression JIT by default
07:07 dalek MoarVM/even-moar-jit:
07:07 dalek MoarVM/even-moar-jit: Currently the JIT is stable enough to permit dogfooding
07:07 dalek MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/64af68273b
07:08 dalek MoarVM/even-moar-jit: b12afca | jnthn++ | VERSION:
07:08 dalek MoarVM/even-moar-jit: Bump VERSION.
07:08 dalek MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/b12afca63b
07:08 dalek MoarVM/even-moar-jit: 176000d | jnthn++ | docs/ChangeLog:
07:08 dalek MoarVM/even-moar-jit: Update ChangeLog.
07:08 dalek MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/176000d91f
07:08 dalek MoarVM/even-moar-jit: 3460b8c | brrt++ | / (2 files):
07:08 dalek MoarVM/even-moar-jit: Merge remote-tracking branch 'origin/master' into even-moar-jit
07:08 dalek MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/3460b8cee2
07:10 brrt joined #moarvm
07:11 brrt TimToady, diakoter, japhb: you str correct :-)
07:26 nine brrt: that's the wrong way! You should have merged even-moar-jit into master...
07:28 brrt joined #moarvm
07:28 nine brrt: will we have a chance at JITing NativeCall with even-moar-jit? Would we have had it with the old JIT?
07:29 zakharyas joined #moarvm
07:30 brrt nine: that is the intention, yes, *but* it depends a bit on the knowledge we have at JIT time
07:32 brrt I'm reasonably sure that it is easier now than it would have been with the old JIT
07:32 * brrt looks at the nativecall implementation
07:32 sivoais joined #moarvm
07:33 brrt but it would probably also have been possible to do with the old JIT
07:34 brrt nine: the basic challenge, I think, with the way of the old JIT is that we'd need a 'special node' for everything we wanted to compile differently
07:35 nine Well, I'll probably have time to look closer at NativeCall in the near future. Also at even-moar-jit. So the timing may just be right
07:36 brrt e.g. like how we have the sp_p6oget_* ops, and special ops for MVMIter objects, and potentially special ops for array access, etc.
07:36 nine I've only started working at Inline::Perl5's performance a couple days ago. Yet I already find cases where we just need a faster NativeCall (or maybe just some fresh ideas).
07:36 brrt uhuh
07:37 moritz afaict, the big problem with NativeCall is that it interprets the signature on each call
07:37 moritz it should really compile once
07:37 brrt so the idea is that we allow representations to insert specialized 'expression' code for ops.That would cover the nativecall case nicely
07:39 nine moritz: looking forward to find such LHF :)
07:40 nine Curiously I get the impression that actually callbacks are much slower than native calls. But that's just a feeling
07:40 sivoais joined #moarvm
07:53 sivoais joined #moarvm
08:12 jnthn We'll need to re-work nativecall a little to have a good shot at JITting it
08:12 jnthn (Re-work it on the inside, that is, no API changes)
08:14 nine jnthn: color me interested in working on that area :)
08:14 sivoais joined #moarvm
08:14 jnthn I've been pondering whether a generalization of the multi-dispatch caching mechanism could help (that is, we install a configured NativeCall callsite into the cache, and the slow-path is what we do today)
08:14 jnthn Since spesh already knows how to do resolution there
08:15 jnthn The tricky part is figuring out where exactly to stick the decont of the incoming args
08:27 timotimo brrt: are you going to fix the broken nqp builds? the 50-jit-register-alloc.t dies with "no subtests run", "no plan found in TAP output"
08:30 * timotimo is already on it
08:31 * timotimo done
08:33 brrt heh, why does that break?
08:35 brrt timotimo: that's… not right… it doesn't work as a canary anymore
08:35 timotimo it always outputs the same number
08:36 brrt (yeah, and that's not right somehow?)
08:36 timotimo it needs to output incrementing numbers
08:36 timotimo otherwise TAP will say "out of order tests"
08:37 brrt aha
08:37 brrt okay
08:37 brrt had no idea
08:37 timotimo we can move the numbers out of foo() into the outer loop
08:38 brrt yeah
08:38 brrt done just that :-)
08:38 brrt now the test works like intended again
08:38 timotimo good
08:39 timotimo er, i mean
08:39 timotimo ok 1
08:40 brrt :-)
08:40 brrt had no idea about that though
09:29 brrt joined #moarvm
09:56 zakharyas joined #moarvm
10:00 brrt joined #moarvm
12:12 zakharyas joined #moarvm
12:51 brrt joined #moarvm
15:19 domidumont joined #moarvm
16:04 zakharyas joined #moarvm
16:07 domidumont joined #moarvm
16:38 domidumont joined #moarvm
17:18 psch joined #moarvm
20:22 Ven_ joined #moarvm
20:37 Ven_ joined #moarvm
20:41 zakharyas joined #moarvm
21:05 Ven_ joined #moarvm
21:27 Ven_ joined #moarvm

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