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:07 reportable6 left 00:08 reportable6 joined 01:08 sourceable6 left, reportable6 left, squashable6 left, benchable6 left, shareable6 left, linkable6 left, greppable6 left, unicodable6 left, notable6 left, tellable6 left, coverable6 left, quotable6 left, nativecallable6 left, statisfiable6 left, releasable6 left, bisectable6 left, evalable6 left, committable6 left, bloatable6 left, unicodable6 joined, statisfiable6 joined, greppable6 joined 01:09 bisectable6 joined, committable6 joined, squashable6 joined, linkable6 joined, bloatable6 joined, reportable6 joined, shareable6 joined, releasable6 joined 01:10 tellable6 joined, nativecallable6 joined, notable6 joined, sourceable6 joined, quotable6 joined, benchable6 joined, evalable6 joined 01:11 coverable6 joined 01:30 nine_ left, nine joined 01:43 frost joined 02:45 benchable6 left, bisectable6 left, committable6 left, squashable6 left, unicodable6 left, evalable6 left, releasable6 left, coverable6 left, reportable6 left, nativecallable6 left, notable6 left, linkable6 left, tellable6 left, sourceable6 left, quotable6 left, statisfiable6 left, greppable6 left, bloatable6 left, shareable6 left 02:46 statisfiable6 joined, squashable6 joined, shareable6 joined 02:47 linkable6 joined, notable6 joined, committable6 joined, unicodable6 joined, quotable6 joined, coverable6 joined, greppable6 joined 02:48 benchable6 joined, releasable6 joined, bloatable6 joined, bisectable6 joined, evalable6 joined, nativecallable6 joined, tellable6 joined, sourceable6 joined 02:49 reportable6 joined 02:55 Util_ left 04:02 bisectable6 left, bloatable6 left, reportable6 left, quotable6 left, statisfiable6 left, greppable6 left, coverable6 left, linkable6 left, notable6 left, releasable6 left, tellable6 left, nativecallable6 left, committable6 left, benchable6 left, sourceable6 left, shareable6 left, evalable6 left, unicodable6 left, squashable6 left 04:03 benchable6 joined, bloatable6 joined, releasable6 joined, squashable6 joined, greppable6 joined, reportable6 joined, nativecallable6 joined 04:04 sourceable6 joined, coverable6 joined, evalable6 joined, linkable6 joined, shareable6 joined, quotable6 joined, unicodable6 joined, statisfiable6 joined, tellable6 joined, bisectable6 joined 04:05 committable6 joined, notable6 joined 05:05 quotable6 left, bisectable6 left, squashable6 left, nativecallable6 left, sourceable6 left, benchable6 left, tellable6 left, unicodable6 left, statisfiable6 left, notable6 left, evalable6 left, greppable6 left, committable6 left, coverable6 left, bloatable6 left, shareable6 left, linkable6 left, releasable6 left, statisfiable6 joined, shareable6 joined 05:06 squashable6 joined, bloatable6 joined, notable6 joined 05:07 evalable6 joined, committable6 joined, sourceable6 joined, greppable6 joined, nativecallable6 joined, releasable6 joined, unicodable6 joined, benchable6 joined, bisectable6 joined 05:08 coverable6 joined, quotable6 joined, tellable6 joined, linkable6 joined 05:30 Util joined 05:38 vrurg_ joined, vrurg left 06:06 reportable6 left 06:08 reportable6 joined 08:06 lizmat_ left, lizmat joined 08:28 discord-raku-bot left, discord-raku-bot joined 10:21 linkable6 left, linkable6 joined 11:21 Kaiepi joined 11:24 Kaipei left 12:06 reportable6 left 12:08 reportable6 joined 12:33 raiph joined, raiph left 12:54 frost left 13:15 Kaiepi left 13:18 RakuIRCLogger left, lizmat left 13:19 Geth left 13:20 lizmat joined 13:21 Geth joined 13:32 vrurg_ left 13:33 vrurg joined 13:50 Kaiepi joined 14:11 raiph joined 14:58 raiph left 15:30 squashable6 left 15:32 squashable6 joined 15:33 raiph joined 16:28 tailgate left, JRaspass left, tbrowder left, JRaspass joined, tbrowder joined 16:29 tailgate joined 17:29 evalable6 left, linkable6 left 17:31 linkable6 joined 17:32 evalable6 joined 18:06 reportable6 left 18:09 reportable6 joined 18:23 raiph left 19:09 squashable6 left 19:12 squashable6 joined 19:28 raiph joined 19:37 raiph left
timo ... still want the validator to be faster ... 20:47
i was hoping i could somehow shoehorn vectorization aka SIMD in there 20:48
the first thought was that if i can ingest like 256 bits or even 512 bits of bytecode at once and for every 16bit chunk, which is what we are aligning to, figure out the length of the corresponding operation, and then "skip through" the bytes, then i'd already have a list of offsets where operations start, and there'd also have to be some kind of signal for "this could not be handled trivially", 20:51
like when there's a jumplist, or a dispatch call where the number and types of operands depends on the callsite passed in
when the offsets are known, parallelization suddenly becomes possible, since the bytecode can now be chopped up into pieces of known sizes and with some extra care we can hopefully find spots to split where context is not needed, like when there's a list of ops that make up a sequence, i.e. where one op starts a sequence where only one specific set of other ops are allowed until one of a few 20:53
specific ops are encountered. our invoke bytecodes work like that for example 20:54
at what point is any win i might possibly achieve going to be swallowed by the extra work i have to do with all the simd to get the results that i want 21:02
.o( sir, this is a wendy's ) 21:06
22:18 Kaiepi left 22:19 Kaiepi joined 23:21 coverable6 left, tellable6 left, linkable6 left, statisfiable6 left, nativecallable6 left, unicodable6 left, quotable6 left, bloatable6 left, releasable6 left, notable6 left, sourceable6 left, committable6 left, squashable6 left, evalable6 left, shareable6 left, greppable6 left, benchable6 left, bisectable6 left, reportable6 left, committable6 joined, squashable6 joined, quotable6 joined, Kaiepi left, sourceable6 joined 23:22 notable6 joined, nativecallable6 joined, greppable6 joined, epony left 23:23 evalable6 joined, bloatable6 joined, linkable6 joined, reportable6 joined, shareable6 joined, bisectable6 joined, benchable6 joined, tellable6 joined 23:24 unicodable6 joined, coverable6 joined, statisfiable6 joined, releasable6 joined