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:00
reportable6 left,
reportable6 joined
|
|||
Woodi | "memory mapped" sound faster then open/seek/read syscals but it's still disc access, right ? good for big user data but for language constructs ? | 03:32 | |
maybe language is too big and some similiar features can be compressed together ? or moved to "more important" standard library, core of core ? | 03:36 | ||
japhb | Woodi: Purely for cache optimization, perl5 had pp_hot.c (explained in github.com/Perl/perl5/blob/blead/p...#L21-L32), so the concept isn't completely unreasonable, but given how much of Raku is written in Raku or NQP, I would think it would be hard to do something similar simply from a dependency ordering standpoint. | 04:16 | |
C code has the "advantage" of writing everything in different source files and letting the linker figure it out. | |||
06:00
reportable6 left
06:03
reportable6 joined
|
|||
xiaomiao | Woodi: memory mapped /sounds/ good, but there's lots of annoying limitations | 06:43 | |
for example very little control over writeback, so if you modify lots of pages you might get "random" latency spiked ... and implementation-specific, linux kernel has some unpleasant locking/serialisation around mmap | 06:44 | ||
nine | Good thing these are mapped read only then | 07:30 | |
08:21
Nicholas left
08:27
sena_kun joined
08:45
Nicholas joined
09:09
sena_kun left
09:34
lizmat_ left,
lizmat joined
10:02
lizmat left
10:04
lizmat joined
10:12
lizmat left
10:32
lizmat joined
12:00
reportable6 left
12:02
reportable6 joined
|
|||
Woodi | but it still is disc access vs array in memory lookup ? | 13:14 | |
as in: array loaded on startup as part of executable. but it is in profiller anyway ? | 13:18 | ||
jnthn | Stuff that is mapped is typically demand paged (e.g. pulled from disk into memory on demand), and when it's readonly the underlying physical memory where it resides can be shared between multiple processes. | 13:29 | |
I'd bet even when it's not readonly then it's shared and CoW'd | 13:31 | ||
Woodi | japhb: nice thing with pp_hot :) but I mean: language spec is enormous and thinked about some magical implementation tricks to compress it :) like eg. class and roles and anything similiar be implemented with same code, etc. Maybe&Magic :) | ||
nine | jnthn: you'd win that bet | 13:35 | |
Woodi: have you had a look at Rakudo's metamodel? Classes, roles, etc. are already implemented using shared primitives. | 13:37 | ||
Woodi | that "core of core" part was also about splitting what is available all the time, somehow. | ||
nine: that just example, there are so many things... and I do mainly "maybe" here... | 13:40 | ||
jnthn: nice to learn that. now we need raku to be as popular as bash ;) | 13:43 | ||
btw. world compilation failed on my 1Gb vps, buu... | 13:44 | ||
lizmat | :q | 14:00 | |
oops ww | |||
heh, I just realized there's an actual "goto" op in MoarVM :-) | 17:27 | ||
nine | And it's used quite commonly | 17:36 | |
15K+ times in the setting for example | 17:37 | ||
lizmat | heh | ||
nine: but all within the current frame, I assume ? | 17:58 | ||
18:00
reportable6 left
18:02
reportable6 joined
|
|||
nine | sure | 18:02 | |
lizmat | in the oplist, any idea what :confprog means ? | 18:12 | |
nine | profiler related | 18:35 | |
lizmat | I guess the name says it all ?? | 18:36 | |
no_op :confprog | |||
nine | IIRC it means that this op is valid in a profile configuration program | 19:24 | |
The letter being something telling the profiler when to start and stop or something | |||
20:05
bisectable6 left,
bisectable6 joined,
coverable6 left,
coverable6 joined,
nativecallable6 left,
nativecallable6 joined
20:06
benchable6 left,
mst left
20:07
rypervenche left
20:08
mst joined,
rypervenche joined
20:09
benchable6 joined
20:54
sena_kun joined
21:52
lizmat left,
lizmat joined
22:11
lizmat_ joined
22:15
lizmat left
22:17
sena_kun left,
sena_kun joined
22:47
linkable6_ left,
sena_kun left,
sena_kun joined
22:49
linkable6_ joined
22:52
sena_kun left
22:53
sena_kun joined
22:57
sena_kun left
|