🦋 Welcome to the IRC channel of the core developers of the Raku Programming Language (raku.org #rakulang). This channel is logged for the purpose of history keeping about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | Logs available at irclogs.raku.org/raku-dev/live.html | For MoarVM see #moarvm Set by lizmat on 8 June 2022. |
|||
01:36
sjn_ joined,
sivoais_ joined,
andinus2 joined
01:40
bloatable6 left,
quotable6 left,
releasable6 left,
shareable6 left,
committable6 left,
notable6 left,
linkable6 left,
epony left,
sivoais left,
sjn left,
tellable6 left,
unicodable6 left,
evalable6 left,
andinus left,
shareable6 joined,
releasable6 joined,
committable6 joined,
bloatable6 joined,
quotable6 joined,
unicodable6 joined,
evalable6 joined,
tellable6 joined,
notable6 joined
01:41
epony joined,
linkable6 joined
02:59
MasterDuke joined
|
|||
MasterDuke | my rakudo build (at 2024.01-32-g5c9156e26) is now dying because of the OOM killer when compiling CORE.c | 03:01 | |
tellable6 | 2024-02-12T09:12:56Z #raku-dev <nine> MasterDuke: pushed a fix for unsigned num | ||
MasterDuke | i even restarted because i thought it might have been because of a recent kernel update, but still happens after the restart. i can see the rss quickly climbing and i only have 32gb on this machine | 03:03 | |
japhb | MasterDuke: If you just build the previous release (meaning 2024.01) does it do the same? | 03:16 | |
MasterDuke | well, i assume it's a commit from the past ~30h, i was able to build yesterday afternoon | 03:17 | |
build with moarvm at HEAD and nqp at 94ee052770e28adc03e217b66210c8e5956c448d and rakudo at e93208ce71c3c51ea3b0c2bf9414d2000139f14c (i.e., latest moarvm, but right before the most recent nqp bump) | 03:22 | ||
linkable6 | (2024-02-12) github.com/Raku/nqp/commit/94ee052770 Bump MoarVM for the latest tweaks/optimizations | ||
(2024-02-11) github.com/rakudo/rakudo/commit/e93208ce71 Remove read lock on MRO | |||
japhb | MasterDuke: I was just talking about ruling out something on your system *other* than Rakudo/NQP/MoarVM changes, and giving a solid starting point for bisection. | 03:24 | |
Habit, sorry. :-) | 03:25 | ||
MasterDuke | i did suspect the kernel-related stuff, but now i think it's the nqp/rakudo changes | 03:26 | |
3291cb41ce862163cb186b00900a864cf5766c7a looks like a decent possibility | 03:28 | ||
linkable6 | (2024-02-12) github.com/Raku/nqp/commit/3291cb41ce Streamline NQPClassHOW | ||
MasterDuke | nqp doesn't seem to use a lot of ram to build | 03:31 | |
unfortunately i can't see what's happening with heaptrack | 04:08 | ||
backing up to the working build, we coerce a lot of largish ints to strs when compiling CORE.c (e.g., coerced 6445646954776 to a str 3314 times) | 04:17 | ||
and heaptrack reports a max rss of 2g | 04:18 | ||
04:18
epony left
|
|||
MasterDuke | we also coerce 64 to a str 42k times. maybe we should increase MVM_INT_TO_STR_CACHE_SIZE from 64 to 65 | 04:21 | |
i'm guessing those large numbers are pointer addresses for WHICHes, but i don't know why we coerce the same ones multiple times | 04:25 | ||
anyway, off to sleep & | 04:28 | ||
04:33
andinus2 left
04:34
andinus joined
05:55
andinus left,
andinus joined
06:31
MasterDuke left
09:11
sena_kun joined
09:29
sjn_ is now known as sjn
|
|||
lizmat | MasterDuke: that's probably my work on NQP streamlining NQPClassHOW :-( | 10:52 | |
tellable6 | lizmat, I'll pass your message to MasterDuke | ||
lizmat | MasterDuke: sadly, the problem didn't expose itself in NQP itself :-( | 10:53 | |
tellable6 | lizmat, I'll pass your message to MasterDuke | ||
lizmat | MasterDuke: am working on it | ||
tellable6 | lizmat, I'll pass your message to MasterDuke | ||
11:19
epony joined
12:07
finanalyst joined
|
|||
lizmat | MasterDuke: fwiw, 6445646954776 appears to be an objectid this is used as a key in the typecache, and thus needs stringification | 12:14 | |
tellable6 | lizmat, I'll pass your message to MasterDuke | ||
lizmat | perhaps the typecache could be a list | 12:15 | |
MasterDuke: looks like the issue in rakudo is caused by some circularity in setting up the type cache: a class having roles having classes that have the same roles or some such | 12:43 | ||
tellable6 | lizmat, I'll pass your message to MasterDuke | ||
12:56
epony left
|
|||
Geth | nqp/main: 23194f5714 | (Elizabeth Mattijsen)++ | src/how/NQPClassHOW.nqp Only add unique types to the typecache One of the changes in 3291cb41ce862163cb18 was that recursion on roles in the typecache was unlimited, rather than only one level deep. This tripped something in the Rakudo build causing it to infiniloop on the build, presumably because of a type having a role having that same type, etc. etc. ... (5 more lines) |
13:03 | |
rakudo/main: 93f0d69675 | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION Bump NQP to get latest NQPClassHOW tweaks |
13:25 | ||
lizmat | MasterDuke: all should be well again now | ||
tellable6 | lizmat, I'll pass your message to MasterDuke | ||
Geth | nqp/main: 57311710fa | (Elizabeth Mattijsen)++ | src/how/NQPClassHOW.nqp Add support for TWEAK method By popular demand, should be helpful in the Rakudo metamodel and bootstrap |
13:35 | |
13:36
sena_kun left
13:38
sena_kun joined
|
|||
Geth | rakudo/main: febe8ee862 | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION Bump NQP to get support for TWEAK in NQP For use in the metamodel and possibly bootstrap |
13:46 | |
14:00
Altai-man joined
14:01
sena_kun left
|
|||
Geth | nqp/main: 6f65509180 | (Elizabeth Mattijsen)++ | src/how/NQPAttribute.nqp Streamline NQPAttribute - mostly cosmetic - remove unnecessary tests for !nqpisnull(foo) && foo: if foo is trueish, it cannot be nqp::isnull, so the first part of the check doesn't make sense, so remove it - add some comments |
14:04 | |
14:16
finanalyst left
14:38
epony joined
16:03
epony left
16:08
epony joined
16:20
epony left
16:36
epony joined
17:32
finanalyst joined
17:40
epony left
17:57
epony joined
|
|||
Geth | nqp/main: bd14e3d0df | (Elizabeth Mattijsen)++ | 2 files Generalize handling of TWEAK Adds a $!tweaks attribute to NQPClassHOW: a list with codeblocks to be executed at the end of the local BUILDPLAN. This should allow TWEAK blocks from roles to be added to a class, and thus provide a consistent means to initialize attributes of a role that is consumed by a class. Also add some basic testing of BUILD / TWEAK: they did not appear to be tested as such yet. |
19:05 | |
19:07
epony left
19:08
epony joined
19:40
finanalyst left
20:16
epony left
20:17
epony joined
21:42
librasteve_ joined
22:46
epony left
22:47
epony joined
23:38
Altai-man left
|