02:24 colomon joined 04:14 kjs_ joined 05:34 kjs_ joined 07:04 FROGGS joined 09:03 zakharyas joined 10:44 kjs_ joined, rurban joined 10:45 pyrimidine joined 12:05 kjs_ joined 12:14 Util_ joined 12:16 rurban_ joined 12:17 bonsaikitten joined 12:21 camelia joined 13:10 kjs_ joined 13:11 donaldh joined 13:17 kjs_ joined 13:37 kjs_ joined 13:45 zakharyas joined 14:04 FROGGS joined 14:52 FROGGS joined 17:09 woolfy1 joined 17:10 lizmat_ joined 18:34 colomon joined 19:04 colomon joined 19:05 rurban_ joined 19:46 woolfy1 left 20:20 zakharyas joined 21:52 brrt joined
brrt i'll just leave this here: cr.openjdk.java.net/~jrose/pres/201...lenges.pdf 21:52
it's interesting to consider how much the jvm is stealing from moarvm :-P 21:53
or rather, how much overlap there really is between the awesome work that jnthn++ is doing and the jvm teams are doing
jnthn I think we have some things to steal from the JVM also :) 21:54
brrt certainly 21:55
jnthn This *is* an interesting slide deck 21:58
brrt++
"Problem: hot-path customization"...we're grappling with this in spesh too :) 21:59
brrt thanks :-)
yeah... for my information... i have a theory on how tracing works and how it relates to inlining
basically, what you'd do is for each invocation, inline the path you think you'll take, and translate the alternative paths to guards 22:00
but if that's correct, we could do that with relatively minor modifications on inlining 22:02
22:04 FROGGS_ joined
jnthn Tracing is more like recording the path you *do* take 22:05
brrt right, but i mean compiling the trace :-) 22:06
the path
jnthn Ah
I was wondering about building a spesh graph *as* we trace
brrt hmmm 22:07
that's an interesting thought
jnthn Along with the deopt table.
And inserting guards.
brrt requires a bit of rethinking i think
jnthn Kinda. :)
brrt but i can see how it could be done 22:08
you might not need to build the spesh graph during tracing, but maybe link graphs together
jnthn One paper I read (forget which, grmbl) noted that you can make it SSA as you construct it too.
"trivially"
brrt is that so
22:09 kjs_ joined
brrt ok, i'm curious 22:09
jnthn Well, given a trace has no branches... :)
brrt that's true
can a trace have loops?
how are loops dealt with
jnthn Well, you normally are tracing a loop
Finding loop headers is step 1 for tracing. 22:10
The tricky one is nested loops. There are various strategies for that. I need to do more reading on this bit.
brrt we should have a 'papers' section on moarvm.org
jnthn Yeah 22:11
brrt as in, stuff we read that helped us along
jnthn 6guts.wordpress.com/interesting-papers/ has a handful
I should make a better job of keeping that updated with new ones I discover, maybe :) 22:12
brrt yeah :-) thanks for that link
those are nice
i'll be off now
jnthn o/ 22:13
brrt \o 22:14
22:14 brrt left 22:45 colomon joined 23:52 chrisseaton left