japhb | ISTR brrt saying he didn't want to merge until he had a better register allocator in place and tested | 00:09 | |
TimToady | ISTR the same | 01:04 | |
01:34
_longines joined
01:48
ilbot3 joined
05:59
domidumont joined
06:02
domidumont joined
06:53
domidumont joined
|
|||
dalek | arVM/even-moar-jit: 64af682 | brrt++ | src/m (2 files): Enable the expression JIT by default Currently the JIT is stable enough to permit dogfooding |
07:07 | |
arVM/even-moar-jit: b12afca | jnthn++ | VERSION: Bump VERSION. |
07:08 | ||
arVM/even-moar-jit: 176000d | jnthn++ | docs/ChangeLog: Update ChangeLog. |
|||
arVM/even-moar-jit: 3460b8c | brrt++ | / (2 files): Merge remote-tracking branch 'origin/master' into even-moar-jit |
|||
07:10
brrt joined
|
|||
brrt | TimToady, diakoter, japhb: you str correct :-) | 07:11 | |
nine | brrt: that's the wrong way! You should have merged even-moar-jit into master... | 07:26 | |
07:28
brrt joined
|
|||
nine | brrt: will we have a chance at JITing NativeCall with even-moar-jit? Would we have had it with the old JIT? | 07:28 | |
07:29
zakharyas joined
|
|||
brrt | nine: that is the intention, yes, *but* it depends a bit on the knowledge we have at JIT time | 07:30 | |
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
|
|||
brrt | but it would probably also have been possible to do with the old JIT | 07:33 | |
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:34 | ||
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:35 | |
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). | ||
brrt | uhuh | ||
moritz | afaict, the big problem with NativeCall is that it interprets the signature on each call | 07:37 | |
it should really compile once | |||
brrt | so the idea is that we allow representations to insert specialized 'expression' code for ops.That would cover the nativecall case nicely | ||
nine | moritz: looking forward to find such LHF :) | 07:39 | |
Curiously I get the impression that actually callbacks are much slower than native calls. But that's just a feeling | 07:40 | ||
07:40
sivoais joined
07:53
sivoais joined
|
|||
jnthn | We'll need to re-work nativecall a little to have a good shot at JITting it | 08:12 | |
(Re-work it on the inside, that is, no API changes) | |||
nine | jnthn: color me interested in working on that area :) | 08:14 | |
08:14
sivoais joined
|
|||
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 | |
Since spesh already knows how to do resolution there | |||
The tricky part is figuring out where exactly to stick the decont of the incoming args | 08:15 | ||
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:27 | |
timotimo is already on it | 08:30 | ||
timotimo done | 08:31 | ||
brrt | heh, why does that break? | 08:33 | |
timotimo: that's… not right… it doesn't work as a canary anymore | 08:35 | ||
timotimo | it always outputs the same number | ||
brrt | (yeah, and that's not right somehow?) | 08:36 | |
timotimo | it needs to output incrementing numbers | ||
otherwise TAP will say "out of order tests" | |||
brrt | aha | 08:37 | |
okay | |||
had no idea | |||
timotimo | we can move the numbers out of foo() into the outer loop | ||
brrt | yeah | 08:38 | |
done just that :-) | |||
now the test works like intended again | |||
timotimo | good | ||
er, i mean | 08:39 | ||
ok 1 | |||
brrt | :-) | 08:40 | |
had no idea about that though | |||
09:29
brrt joined
09:56
zakharyas joined
10:00
brrt joined
12:12
zakharyas joined
12:51
brrt joined
15:19
domidumont joined
16:04
zakharyas joined
16:07
domidumont joined
16:38
domidumont joined
17:18
psch joined
20:22
Ven_ joined
20:37
Ven_ joined
20:41
zakharyas joined
21:05
Ven_ joined
21:27
Ven_ joined
|