github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm Set by AlexDaniel on 12 June 2018. |
|||
00:32
konvertex left
01:05
patrickz left
07:09
patrickb joined
07:19
Altai-man_ joined
08:11
zakharyas joined
|
|||
nwc10 | good *, #moarvm | 08:13 | |
I went on a "coffee raid" to Andrea's parents. Actual primary objective was to see if they had the sort of sticky tape I wanted. They do. I don't need to buy any. Good | |||
Secondary objective - (differnt) ecoffee - not quite so good. I looked at the machine, water level seemed fine, pushed the button. | 08:14 | ||
horrible high pitched whine - the grinder is "running on fumes". first time in ages that it has been left in a state of "refill the beans" | |||
nine | Joy and frustration can be so close with coffee | 08:24 | |
08:26
sena_kun joined
08:27
Altai-man_ left
|
|||
nwc10 | nine: my colleague (who is actually in St Pölten has set his work status to "out of coffee 😱". | 08:32 | |
Melanie (whom you have met) has set hers to i.ibb.co/6P3xMmb/IMG-20200514-144113.jpg | |||
nine | Somehow our employees never have as good excuses as those | 08:33 | |
08:33
konvertex joined
|
|||
nine | Well, could be worse I guess: the cat could block you from making coffee | 08:34 | |
nwc10 | But to do that, a cat would have to stop blocking the laptop keyboard, which is a higher priority task (I thought) | 08:35 | |
(I know that that one isn't, but maybe it doesn't matter once it knows that it has the bipedal servant's attention) | |||
nine | That look does not allow you to go back to a laptop! | 08:36 | |
nwc10 | "know your place in life, minion!" | 08:37 | |
jnthn | Hm, the office coffee maker didn't have any problems with lack of beans, however did just tell me it's filled its empty grounds container... | 09:39 | |
At least it made me a coffee first, so that's less thinking to do before the coffee :) | |||
So...where was I...oh right, continuations and GC | 09:45 | ||
nine | Much simpler problems than stubborn coffee makers | 09:51 | |
jnthn | Maybe I shoulda done them before the coffee... | 09:52 | |
MasterDuke | jnthn: since i think you've said you don't get github notifications, github.com/MoarVM/MoarVM/pull/1286 | 09:55 | |
tellable6 | 2020-05-15T00:32:21Z #raku <Xliff> MasterDuke Ooh! Thanks! | ||
jnthn | MasterDuke: I do get them, just sometimes a bit overwhelmed by them :) | 09:56 | |
MasterDuke | ah, ok, don't need the extra ping then | 10:01 | |
Geth | MoarVM/new-disp: 59d5e72253 | (Jonathan Worthington)++ | 4 files Reinstate freeing of uninvoked continuations |
10:03 | |
MoarVM/new-disp: 971a75ef14 | (Jonathan Worthington)++ | 4 files Reinstate GC marking of continuations and tags |
10:13 | ||
jnthn | Nice, back to Rakudo `make test` passing (with spesh disabled) | 10:14 | |
MasterDuke: fwiw, will merge your PR once I get back to a "stable state" | 10:15 | ||
(As in, once I've got things looking quite clean again with spesh enabled, since checking the impact of your branch is a bit hard when I have to have spesh disabled. :)) | 10:16 | ||
Hmm...9 spectest failures, 1 probably just that my Rakudo is behind HEAD, and all the rest are about supplies or non-blocking await... | 10:19 | ||
Thread 1 "moar" received signal SIGSEGV, Segmentation fault. | 10:20 | ||
MVM_callstack_unwind_frame (tc=tc@entry=0x604b60) at src/core/callstack.c:222 | |||
222 switch (tc->stack_top->kind) { | |||
(gdb) p tc->stack_top | |||
$1 = (MVMCallStackRecord *) 0x0 | |||
Well, that probably shouldn't happen :) | |||
10:25
Altai-man_ joined
10:27
sena_kun left
|
|||
timotimo | should be possible to scan the entire process memory for 0x0 to see where it may have come from! | 10:42 | |
it's just one value out of 2**64, the chances that it appears an additional unrelated time are super slim! | 10:43 | ||
Geth | MoarVM/new-disp: 11bc13e155 | (Jonathan Worthington)++ | src/core/callstack.c Assert stack top and current region are consistent |
10:44 | |
MoarVM/new-disp: 645f83a952 | (Jonathan Worthington)++ | src/core/callstack.c Sync current region correctly in callstack append |
|||
jnthn | timotimo: I didn't know it was possible to fail at probability harder than me ;) | 10:45 | |
Hurrah, that last commit fixes the continuations regression | 10:47 | ||
Good news: I successfully re-worked continuations for the new callstack model | 10:48 | ||
Bad news: I now need to re-work deopt for it | |||
timotimo | i.ebayimg.com/images/g/itcAAOSwROt...s-l640.jpg - a digital clock showing 12:34:56? give me a break, that's so unrealistic! | 11:06 | |
jnthn | Intersting, so it seems that spesh (including deopt) without JIT, inlining, and OSR is already OK. | 11:09 | |
This is good, in that it means my first step can be to refactor the deopt to happen lazily on stack unwind | |||
And then test I got that bit right, before doing the uninline changes that depend upon it. | 11:10 | ||
I'm not sure that in the current state we'll need to fix OSR. Future improvements may implicate it. | |||
I'm a bit surprsied JIT is broken, however. | 11:11 | ||
Before all of that...lunch :) | 11:15 | ||
MasterDuke | jnthn: no hurry at all re the PR, just wanted to make sure you had in fact seen it | 11:17 | |
Altai-man_ | >goes for a lunch | 11:19 | |
tellable6 | 2020-05-13T22:21:44Z #raku <AlexDaniel`> Altai-man_: interesting! See gist.github.com/Whateverable/f57c1...54562ab691 | ||
2020-05-13T22:21:46Z #raku <AlexDaniel`> Altai-man_: | |||
2020-05-13T22:22:54Z #raku <AlexDaniel`> Altai-man_: basically, I think 2020.02.1 was botched a bit. The VERSION wasn't set correctly, for some reason | |||
2020-05-13T22:23:06Z #raku <AlexDaniel`> Altai-man_: 2020.05.1 is fine though | |||
Altai-man_ | >posts SO answer | ||
I see what you did there! | |||
jnthn | Soup takes time to warm... :) | 11:20 | |
11:27
evalable6 left
11:28
evalable6 joined
11:33
Kaiepi left,
Kaiepi joined
11:53
zakharyas left
|
|||
jnthn | Righty...back to the code | 12:01 | |
nwc10 | jnthn: we went out to lunch! | 12:08 | |
jnthn | Something nice? | ||
nwc10 | and I forgot, that round here, "cappuccino" has a different default. (and I really should have been aware of this, given that everyone had something "ausebochen" | 12:09 | |
jnthn: well, I treated what I got as "free whipped cream" and then a large expresso | |||
you have to ask for it Italian style, IIRC, to get foamed milk. | |||
jnthn | ah | ||
nwc10 | jnthn: oh yes, actual question's answer - the local thing that relpaced a previous Greek restaurant - local food. Yes, good. I had a "Bauern Cordon Bleu" so it's "Cordon Bleu" with even more things stuffed in it. | 12:17 | |
(I have to admit that I liked the Greek restaurant better, because it was awesome. But it was probably the wrong location for that sort of thing) | 12:18 | ||
I hope that the local "Pizza" place doesn't suffer the same fate, because they do very good Indian. | |||
12:26
sena_kun joined
|
|||
jnthn | There was an Italian place around the corner from where we live, which we tried a few times before the lockdown and quite liked. That hasn't survived, alas. | 12:26 | |
12:27
Altai-man_ left
|
|||
nwc10 | :-( | 12:29 | |
today was the first day of restaurants here. | |||
The waitress hit the low light fitting first. Then I did at the end. Where the tables *used* to be. (and more tables) | |||
jnthn | Was on Monday here (though they've been able to do takeaway/delivery the whole time) | 12:30 | |
Not sure if picking Monday meant any "rush" to go out to a restaurant again was more spread, 'cus some would Just Do It and others would wait until the weekend. | 12:31 | ||
I suspect that was the plan, or at least, to do it after the 3-day weekend (last Friday was a holiday here) | |||
nwc10 | yes. I think that the thing here is that today is the 15th, and that features in other contractural things as half-a-month | ||
and yes, Monday seems a better day to pick | 12:32 | ||
have just been up to investigate the rumbling. It's not the washing machine. It's the concrete mixer for nextdoor's new pool foundations. | |||
jnthn | In fact, it's been 4 day weeks so often of late (easter, 1st May, 8th May) that when I woke up this morning my body felt like it was saying "wtf, but we worked 4 days, it's rest time" :) | ||
nwc10 | "Perlmooser beton". That's off topic here, isn't it? :-) | ||
jnthn: :-) Happens here too, but one day fewer. | 12:33 | ||
We can't slack on the 8th | |||
er, strictly that should be "Beton". Grammar is hard. | 12:34 | ||
Geth | MoarVM/new-disp: b0347e3db6 | (Jonathan Worthington)++ | 3 files Preparations for lazy deopt all We'll twiddle the frame kind, meaning that we can keep the logic in frame unwind less branch-y, which is probably a net win. While some other paths do have to do a bit more checking now, they should be rather less common code paths (GC mark, frame heap promotion, and continuations). |
12:36 | |
jnthn | Hmm, so I think deopt can get a bit cheaper, in that I'm not sure under the new design we're going to have any blockers to uninlining into stack frames rather than heap frames | 12:39 | |
13:24
vrurg_ joined
13:26
vrurg left
13:28
vrurg joined
13:31
vrurg_ left
13:55
zakharyas joined
14:25
Altai-man_ joined
14:27
sena_kun left
|
|||
Geth | MoarVM/new-disp: 4b3870fabd | (Jonathan Worthington)++ | 3 files Perform global deopt lazily as we unwind callstack This is a bit more CPU cache friendly as it means we don't need to go looking up a bunch of stuff relating to a frame down the stack, only the record itself. The primary reason for this, however, is that it means we shall only have to perform uninlining at the very top of the call stack, which greatly eases the process (since it's trivial to create records at the top, but would be very fraught, and quite costly, to rewrite the whole stack at the point of a global deopt). The update of uninlining is still to come. |
14:32 | |
MoarVM/new-disp: 77abbc810b | (Jonathan Worthington)++ | 3 files Have unwinder hand back frame to return into Since it will not be returner->caller in the case that we do a lazy deopt and it preforms uninlining. |
14:54 | ||
timotimo | exciting news | 15:13 | |
i thought we'd probably have to do much less deopting in cases where we've got a loop at the top that deopts and OSRs a bunch, but an OSR after a deopt doesn't really re-optimize stack frames further down at all | 15:14 | ||
jnthn | I don't think this changes the amount of deopting we have to do, just its cost. | 15:18 | |
This is a bit tricky... | 15:34 | ||
Need to flip the ordering of uninling around from deepest first to shallowest first, which means I need to reconsider all the fixup bits :) | 15:35 | ||
timotimo | oh, that sounds tricky for sure | 15:39 | |
15:41
zakharyas left
15:42
zakharyas joined,
domidumont joined
15:49
zakharyas left
15:50
zakharyas joined
16:13
zakharyas left,
zakharyas joined
16:16
Voldenet left
16:22
Voldenet joined,
Voldenet left,
Voldenet joined
16:25
sena_kun joined
16:27
Altai-man_ left
|
|||
jnthn | oh wow, I think the final result is actually a good bit simpler to reason about | 16:38 | |
4 files changed, 126 insertions(+), 200 deletions(-) | 16:47 | ||
This makes me happy. Less happy, alas, is that it blows up in CORE.setting compilation | |||
Geth | MoarVM/new-disp: af1f04aaf9 | (Jonathan Worthington)++ | 4 files Re-work uninlining for the new callstack scheme Overall, this is a simplification. Since we don't have to care about uninlining in the middle of a callstack any more, the code to deal with clearly disappears. However, a further benefit we get is that uninline can do its work, and then leave its caller to do the appropriate kind of next action on the stack top, whether it's the deopt one case or lazy ... (10 more lines) |
16:48 | |
jnthn | Hmm, and I think that's going to be next week's debugging fun. | 16:55 | |
17:02
domidumont left
|
|||
jnthn | ah, good, there are simpler versions of it to go after... But anyways. Home time. | 17:03 | |
17:15
discoD joined
|
|||
timotimo | sounds very promising | 17:16 | |
i assume you're already testing with NODELAY | 17:17 | ||
17:21
patrickb left
17:23
patrickb joined
17:24
patrickz joined
17:27
patrickb left
|
|||
jnthn | timotimo: Not when I can get cases just with BLOCKING :) | 17:54 | |
timotimo | so is the simpler version you can go after somewhere in nqp? :D | 17:57 | |
18:23
zakharyas left
18:25
Altai-man_ joined
18:27
sena_kun left
19:21
MasterDuke left
19:31
zakharyas joined
20:01
Kaeipi joined
20:02
discoD left,
Kaiepi left
|
|||
jnthn | timotimo: No, but build Rakudo with inline disabled works, then some tests fail | 20:07 | |
timotimo | ah, i see | ||
that's not bad, yeah | |||
jnthn | That said...something is off with deopt generally. There's been a long-standing workaround in deopt.c that is now gone, and a few tests - even without uninlining - now fail. | 20:08 | |
So will probably end up trying to get to the bottom of that too | |||
But, Monday... :) | |||
timotimo: Did you see the PRs for p6-app-moarvm-debug? | 20:23 | ||
timotimo | oh, i did not! | 20:25 | |
20:26
sena_kun joined
|
|||
lizmat takes an early night after chasing a lot of bugs that were bugs in testing | 20:26 | ||
jnthn | lizmat++ | 20:27 | |
20:28
Altai-man_ left
20:43
MasterDuke joined
|
|||
vrurg | I'm rewriting rakudo INSTALL.txt and found a mention of "NQP-rx that comes with MoarVM". What is it? I don't see any mentions of any *-rx under nqp/ | 21:20 | |
Can I just remove that note then? | |||
timotimo | oooh | 21:21 | |
that used to say "Parrot." | |||
moritz, who also wrote that paragraph, also turned this instance of Parrot into MoarVM | 21:22 | ||
so yeah, you can toss that | |||
vrurg | timotimo: thanks! | ||
(but that 'oooh' did scare me a bit :D) | |||
timotimo | i'm sorry, i should be aware of my responsibility as a public figure! ;) | 21:23 | |
vrurg | "A couple of dozen of people turned grey when the commander of a bomb squad said 'oh, f*' realizing that he forgot to buy some baby milk" :) | 21:25 | |
21:27
zakharyas left
|
|||
patrickz | .tell bartolin The previous failure is solved. Now I have a new JVM error: github.com/rakudo/rakudo/issues/3695 Help appreciated! | 21:53 | |
tellable6 | patrickz, I'll pass your message to bartolin_ | ||
patrickz | oops wrong channel... | 21:58 | |
22:00
sena_kun left
22:05
discoD joined
22:07
patrickz left
|