šŸ¦‹ 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.
02:22 japhb left 02:41 japhb joined 02:45 japhb left 02:46 japhb joined 03:20 japhb left 03:34 japhb joined 08:59 sena_kun joined
Voldenet MasterDuke: I couldn't apply exactly the same patch directly, because of fastutil collections used, but 0x0.st/H7PR.diff works - with this memory goes up to 2.1GB and is painfully slow (10+ minutes so far, no end in sight) 09:38
I'm hardly believing what I see so I'll rerun main branch in a while, just to make sure the memory usage used to be lower 09:40
So, I've re-tested things on main branch and the memory usage isn't higher at all, the difference was amount of memory used by VM 10:52
both runs were done with AggressiveHeap, but first raku-ast-compiler ran with lower memory (which wasn't enough for v6c) 10:53
since I got max value for fastutil branch (RSS 2195MB) I'll compare with maximum from main branch now 10:59
AggressiveHeap will make comparisons a bit more difficult, but the resoult should be meaningful either way 11:03
though honestly, fastutil branch is many times faster 11:04
I confirm that when using the same amount of memory on VM, the memory usage is about the same 12:15
except it's a few times slower
on main 12:16
lizmat which one is a few times slower ?
Voldenet main, I could do exact timings by modifying nqp-j 12:18
rough estimate is fastutil being 3x faster 12:21
at least
reading these plots isn't really meaningful way of measuring anything either way 12:25
12:54 sena_kun left
MasterDuke Voldenet: when you say "VM", do you mean the jvm or the vm in which you're running these experiments? so the rough conclusion is that memory used while building nqp (and/or rakudo?) on main and the fastutil branch is the same, but fastutil branch is faster? 13:26
Geth rakudo/main: bef608a8ff | (Elizabeth Mattijsen)++ | src/Perl6/bootstrap.c/BOOTSTRAP.nqp
Move Binder methods closer to where they operate on

Also move variables not needed on the JVM into the "not compiled on JVM" area
rakudo/main: 4b124a9852 | (Elizabeth Mattijsen)++ | src/Perl6/bootstrap.c/BOOTSTRAP.nqp
Streamline container descriptors

Mostly esthetics, with ContainerDescriptor.new now bypassing the BUILDPLAN altogether
Voldenet By saying VM i mean the VM I'm running experiments in and yes, that conclusion is correct 13:28
MasterDuke just successfully built rakudo with the jvm backend at 2fa69e878
linkable6 (2024-02-17) github.com/rakudo/rakudo/commit/2fa69e8789 Bump NQP to get latest compose check tweaks
MasterDuke Voldenet: cool, thanks 13:29
i had hoped it would also reduce memory usage, but i'll take just faster 13:32
Voldenet: oh, and i didn't quite follow what you tested re that one change and its effect. main, main + that change, and fastutil (which includes that change)? 13:35
Voldenet Yes: main 1h+, with change: 23m+, with fastutil: 8m+ 13:36
MasterDuke nice!
Voldenet Btw, the problem with this memory measurement is that RSS is only the total jvm-allocated size
I could probably do some inspection on `jcmd pid GC.heap_info`
iirc it forces GC as well 13:37
MasterDuke yeah, might need to look at a profile to see if we can reduce the size of the heap we configure to run with
Voldenet or GC.class_histogram, but there's entries like those 13:38
> 1: 29383 3055832 __P6opaque__28
> num #instances #bytes class name (module) 13:39
MasterDuke i'm also going to try to reduce the size of the fastutil jar. they have some script to find what classes you actually use and create a minimized jar, which hopefully will be quite a bit smaller than even the "fastutil-core" jar it's using now 13:43
also we're using jna-platform 4.5.0, but they're now at 5.14.0, might be some improvements there 13:47
also we're using asm 4.1, butĀ  they're now at 9.6 13:53
afk for a while, hopefully will get to play around some more this afternoon or evening 13:56
Geth rakudo/main: 1491f82228 | (Elizabeth Mattijsen)++ | src/Perl6/bootstrap.c/BOOTSTRAP.nqp
Streamline Binder.trial_bind
18:17 sena_kun joined
Geth rakudo/main: 8e863c81f5 | (Elizabeth Mattijsen)++ | src/Perl6/bootstrap.c/BOOTSTRAP.nqp
Two additional micro-opts in Bindner.trial_bind
rakudo/main: 7dee053075 | (Elizabeth Mattijsen)++ | src/Perl6/bootstrap.c/BOOTSTRAP.nqp
Streamline creation of several classes in bootstrap

Mostly esthetic:
  - Mu
  - Any
  - Cool
  - Attribute
  - Scalar
rakudo/main: 375393fa50 | (Elizabeth Mattijsen)++ | src/Perl6/bootstrap.c/BOOTSTRAP.nqp
Streamline ScalarVAR and xxxRef classes
22:40 vrurg_ is now known as vrurg 23:02 sena_kun left 23:04 sena_kun joined 23:06 sena_kun left