Welcome to the main channel on the development of MoarVM, a virtual machine for NQP and Rakudo (moarvm.org). This channel is being logged for historical purposes. Set by lizmat on 24 May 2021. |
|||
00:02
reportable6 left
00:03
reportable6 joined
01:03
squashable6 left,
reportable6 left,
releasable6 left,
sourceable6 left,
shareable6 left,
statisfiable6 left,
unicodable6 left,
coverable6 left,
linkable6 left,
evalable6 left,
greppable6 left,
benchable6 left,
notable6 left,
bloatable6 left,
nativecallable6 left,
tellable6 left,
bisectable6 left,
quotable6 left,
committable6 left,
bloatable6 joined,
evalable6 joined,
benchable6 joined,
nativecallable6 joined
01:04
notable6 joined,
tellable6 joined,
quotable6 joined,
squashable6 joined
01:05
statisfiable6 joined,
shareable6 joined,
sourceable6 joined
01:06
committable6 joined
01:12
frost joined
02:03
unicodable6 joined
02:04
bisectable6 joined,
releasable6 joined
02:05
greppable6 joined,
reportable6 joined
03:05
coverable6 joined
04:04
linkable6 joined
04:57
harrow left
05:01
harrow joined
06:02
reportable6 left
|
|||
Nicholas | good *, new-disp :-) | 06:21 | |
nine | Yes, new-disp is good indeed! | 06:32 | |
07:53
linkable6 left,
releasable6 left,
bisectable6 left,
coverable6 left,
unicodable6 left,
greppable6 left,
bloatable6 left,
nativecallable6 left,
committable6 left,
notable6 left,
squashable6 left,
quotable6 left,
shareable6 left,
sourceable6 left,
benchable6 left,
evalable6 left,
statisfiable6 left,
tellable6 left,
sourceable6 joined,
bloatable6 joined
07:54
bisectable6 joined,
statisfiable6 joined,
committable6 joined,
nativecallable6 joined
07:55
notable6 joined,
squashable6 joined
07:56
evalable6 joined
|
|||
nine | People who claim that computers are fast enough already clearly have never run CORE.c compilation in callgrind... | 08:31 | |
Nicholas | oh my, oh yes. | ||
and I thought ASAN was tedious | |||
08:35
tealecloud joined
|
|||
nine | Stage parse : 1228.403 | 08:53 | |
More time for the piano during the comparison run :) | 08:54 | ||
08:54
benchable6 joined
08:56
unicodable6 joined,
quotable6 joined
09:03
reportable6 joined
09:55
linkable6 joined,
shareable6 joined,
tellable6 joined
|
|||
Geth | MoarVM/new-disp: 0fed320794 | (Stefan Seifert)++ | 3 files Replace costly $*MAST_FRAME lookup by $frame arg in bytecode generators |
10:41 | |
nine | According to callgrind, this gets us from 311,532,366,964 (100.0%) PROGRAM TOTALS to 308,948,475,562 (100.0%) PROGRAM TOTALS | 10:42 | |
Less of a speedup than hoped, but it's at least better | |||
It's clearly showing a million fewer lookups of dynamics. The part I don't understand is the ~3 million more lexical lookups using the frame walker we now do. | 10:46 | ||
lizmat | after doing a git pull in rakudo, I get: Too many positionals passed; expected 3 arguments but got 4 | ||
at /Users/liz/Github/rakudo.moar/install/share/nqp/lib/MAST/Ops.nqp:10964 | |||
nine | lizmat: did you pull nqp and MoarVM as well? | ||
lizmat | guess nqp and MoarVM need to be bumped on new-disp as well? | ||
ah... I need to rebuild :-) | |||
I'm using the --gen-moar=new-disp trick :-) | 10:47 | ||
nine | With the situation as fluid as it is, we don't usually bump the revisions. You want to stay on top of the branches at all times anyway and bumps make rebasing a bit more tedious | 10:48 | |
lizmat | yeah, just rebuilding it makes it work, sorry for the noise :-) | 10:51 | |
10:53
greppable6 joined
10:54
releasable6 joined
10:55
coverable6 joined
|
|||
nine | Huh...according to my fprintf in MVM_frame_find_lexical_by_name, it's actually doing fewer lookups now. 13861659 lookups of $?CLASS instead of 14337557. Others are exactly the same (and so few that they don't even matter) | 11:05 | |
11:05
linkable6 left
|
|||
timo | huh, "find_lexical_by_name" for $?CLASS? isn't it supposed to go via getlexperinvtype? | 11:07 | |
nine | getlexperinvtype does use MVM_frame_find_lexical_by_name | ||
11:08
linkable6 joined
|
|||
timo | oh, haha | 11:08 | |
but we do try to optimize that real good in spesh | 11:09 | ||
could be a result of not inlining at the moment | |||
do we have the callgrind numbers for master handy¿ | 11:28 | ||
11:29
TempIRCLogger left,
TempIRCLogger joined
|
|||
timo | don't want to force 20 minutes of callgrind onto you if not | 11:42 | |
12:02
reportable6 left
12:04
reportable6 joined
12:18
brrt joined
|
|||
Nicholas | good *, brrt | 12:33 | |
brrt | good * Nicholas | ||
12:57
frost left
|
|||
nine | master "only" looks up $?CLASS 10921854 times. But there are various other symbols that it looks up quite often that all but disappear from the list in new-disp. Like &needs_cond_passed 75961 vs 5 times or &type_to_local_type 61366 vs 4 or &push_op 33605 vs 9 | 13:50 | |
13:50
linkable6 left
13:51
linkable6 joined
14:51
tealecloud left
14:54
tealecloud joined
15:46
MasterDuke joined
17:21
brrt left
17:59
tealecloud left
18:04
reportable6 left
|
|||
Nicholas | you know when you've been using rr "too much" when the first command you type in gdb is 'c' and it answers back with "The program is not being run." | 18:58 | |
timo | when you press "c" on your keyboard to turn your computer on | 19:12 | |
lizmat | ok, getting slightly annoyed now | 19:52 | |
Missing or wrong version of dependency 'gen/moar/stage2/NQPHLL.nqp' (from 'site#sources/45334C557865A97D1ECA0D3F3A3FAF2017FCE553 (OO::Monitors)') | |||
I've nuked my install dir and built from scratch (on master) | 19:53 | ||
decided to uninstall OO::Monitors yet again, and install again, and it works :-( | 19:55 | ||
sorry for the noise | |||
and back to failing again :-( | 19:59 | ||
20:00
tealecloud joined
20:06
reportable6 joined
|
|||
lizmat | in the end I did a new rakudo checkout, which appears to have fixed it | 20:24 | |
dogbert11 | lizmat: have you abandoned new-disp :) | 20:27 | |
lizmat | I'm not sure what caused this, but yeah: in the middle of migrating modules to the zef ecosystem | 20:29 | |
and that still has a few rough edges | |||
it was just one too many variables | |||
it also was noticeably slower on my local logs server work | 20:31 | ||
dogbert11 | yeah, it's still a bit slower than master | 20:32 | |
20:33
Kaiepi joined
20:34
Kaipi left
|
|||
timo | one important piece of optimization is missing that currently prevents a lot of inlining, i think? | 20:50 | |
21:15
tealecloud left
23:24
greppable6 left,
sourceable6 left,
committable6 left,
coverable6 left,
bloatable6 left,
bisectable6 left,
quotable6 left,
evalable6 left,
squashable6 left,
shareable6 left,
linkable6 left,
releasable6 left,
benchable6 left,
unicodable6 left,
notable6 left,
reportable6 left,
statisfiable6 left,
nativecallable6 left,
tellable6 left
23:25
unicodable6 joined,
notable6 joined,
linkable6 joined
23:26
shareable6 joined,
releasable6 joined,
greppable6 joined,
benchable6 joined,
committable6 joined,
nativecallable6 joined,
bloatable6 joined
23:27
sourceable6 joined
|