github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
02:11 frost-lab joined
nwc10 good *, #moarvm 05:24
06:38 domidumont joined 06:41 frost-lab left 07:20 zakharyas joined 08:12 sena_kun left 08:13 sena_kun joined
Geth MoarVM: 9f82a46b4f | (Patrick Böker)++ | azure-pipelines.yml
Add a test configuration for MinGW on Windows

This uses the MinGW that is provided by the AzureCI `windows-2019` image.
08:15
MoarVM: f9a9a193f3 | (Nicholas Clark)++ (committed using GitHub Web editor) | azure-pipelines.yml
Merge pull request #1385 from patrickbkr/test-mingw

Add a test configuration for MinGW on Windows
nwc10 what could possibly go wrong? :-) 08:16
08:18 domidumont left
MasterDuke hasn't windows actually worked with '/' as the dir separator for a long time now? so in the cases where `${{ variables.PWSH_DEV }}` isn't needed, couldn't we combine the windows and non-windows tasks? e.g., github.com/MoarVM/MoarVM/blob/mast...#L251-L260 08:31
guess i can test it out... 08:34
nwc10 My understanding (from a decade ago) was that the only class of thing that didn't like / was command line tools 08:35
(Thanks, CP/M for using / as the option character)
(I might be wrong)
but basically all the APIs were agnostic about / or \
(I might be wrong)
but if so, using / internally, and only switching to \ for "presentation to the user" and command line shells might simplify things 08:36
rant/diregression - not totally relevant here - I get a bit frustrated with everyon goign "we must use File::Spec for portability" and I think "dudes, you think that you're portable but you are only thinking about directory separators and filenames. What about volumes? What about OSes that make distinctions between files and directories in their path syntax?" 08:38
(and that's before we get to really strange setups like MVS and RISC OS)
it's often faux-portability, at a cost of clarity
MasterDuke what systems does File::Spec support? plan 9, haiku/beos? i haven't used those other than to spin up a vm once or twice, but istr they have weird file(system) stuff 08:41
08:44 frost-lab joined
Geth MoarVM: MasterDuke17++ created pull request #1483:
Remove unnecessary Windows specific tasks from CI
08:45
MasterDuke you know, for testing this stuff i could comment out all the other unchanged jobs...should help getting feedback faster 08:48
09:03 sena_kun left 09:05 sena_kun joined
MasterDuke oh, the nativecall tests compile stuff, so they need the dev powershell. well, we can at least combine the nqp test tasks... 09:22
jnthn moarning o/ 09:29
09:31 frost-lab left
nwc10 \o 09:44
MasterDuke crazy, on windows, moarvm takes longer to compile than rakudo 09:51
dev.azure.com/MoarVM/MoarVM/_build...e&l=13 ha. well, conditionally setting the PWSH_DEV variable didn't work, but including it (even when set) in the linux builds doesn't actually break them... 09:54
but not sure what's wrong with my conditional assignment docs.microsoft.com/en-us/azure/dev...a-variable 09:57
10:56 zakharyas left 12:26 zakharyas joined 12:34 MasterDuke left 12:39 MasterDuke joined 13:11 MasterDuke left 13:13 MasterDuke joined
timotimo cdn.discordapp.com/attachments/557...nknown.png who wants to guess what we're looking at here 13:24
MasterDuke compiling rakudo's core setting? 13:25
jnthn Are the big drops (full?) GC collections? 13:28
tellable6 2021-04-29T10:47:48Z #raku-dev <Xliff> jnthn: Have any conservative idea on when to expect RakuAST on master?
timotimo cdn.discordapp.com/attachments/557...rrrrrr.gif lovely to look at
jnthn: not full :)
check the y range, too, it's barely any amount 13:29
jnthn I was trying to figure out the x range to decide full or not :)
timotimo you can open the memory map, "restrict to time" and scrub the timeline, and it'll show what happens, so shiny
jnthn But yeah, the y gives it away too
timotimo this is the thread pool supervisor thread 13:30
jnthn .tell Xliff Can't see it happening before Q4 this year; even when most features are there, we'll want all the opts to be too, plus there'll be lots of little details to do (and bug compat with the current compiler frontend) 13:35
tellable6 jnthn, I'll pass your message to Xliff
13:37 frost-lab joined 13:39 frost-lab left
timotimo cdn.discordapp.com/attachments/557...nknown.png find nativecalls by symbol names because why not :3 13:42
MasterDuke do your changes to the moarvm build look similar to my PR? 13:44
timotimo you mean mine?
MasterDuke yes 13:45
timotimo gist.github.com/timo/c15757c54db23...7657c949bb 13:46
i changed Makefile itselfr ather than Makefile.in or something
terrible hack
MasterDuke you 13:47
're included TracyC.h everywhere also. i tried just including it in moar.h, but then the nqp build complains
timotimo ah, yeah if we don't install teh header file, nqp won't be able to compile its runner since it can't find the header
jnthn: you see how after the gc run we seem to grab addresses from the freelist in descending memory address order? is that a bad thing? 13:49
MasterDuke oh, right, i'm probably not installing it... 13:50
jnthn timotimo: I'm not sure. Depends if caches do better at predicting pre-fetches on ascending patterns and, even then, if such an effect comes into play when there's usually a decent amount of time, and so other code, between allocations. 13:52
13:54 moritz_ joined, moritz left
timotimo cdn.discordapp.com/attachments/557...nknown.png does this tell you anything? put some zones in the GC. the tiny one at the bottom at the end is also finish_gc 13:59
bright vs dark is "does the thread run on the cpu?" 14:03
jnthn Bright is when it's running? 14:08
timotimo correct
jnthn It aligns with what I'd expect from the way things are implemneted. Presumably the async worker has little GC work to do, so doesn't have to run much of the time. But the various phases of GC are coordinated via condition variables, and the wakeups we see are the bright parts. 14:10
timotimo fair enough
jnthn It's nice in that it shows we're not busy-waiting in nasty ways, which did happen in earlier implementations. 14:11
What would be quite interesting is to see how this looks in an application with a bunch of threads doing work 14:12
timotimo cdn.discordapp.com/attachments/557...nknown.png - heap snapshot taking suuuuuper slow :D at least when gc work is tiny like this 14:13
MasterDuke use tracy to profile moar-perf loading a --profile of rakudo compiling the core setting...
14:14 MasterDuke left, MasterDuke joined
timotimo this is actually moarperf, but i didn't care to compile the javascript crap yet 14:14
so i only get a patterned background image when i open it up
MasterDuke oh, nice though 14:15
14:20 sena_kun left 14:22 sena_kun joined
timotimo ===> Install [FAIL] for App::MoarVM::HeapAnalyzer:ver<0.1>: ===SORRY!=== 14:33
Missing serialize REPR function for REPR ConcBlockingQueue (QueueType)
===SORRY!===
Missing serialize REPR function for REPR ConcBlockingQueue (QueueType)
wow, what on earth
is my rakude installation just kinda busted somehow? 14:38
lizmat well, what would serialization of a ConcBlockingQueue mean? that's a runtime concept, no? 14:39
so I guess it gets includes somewhere in a context being serialized when it shouldn't?
timotimo yeah, i have no clue why it'd try to do that 14:40
trying to run the moar heapanalyzer gives me two nice exceptions "cannot find method name on object of type Perl6::Metamodel::ClassHOW 14:41
cdn.discordapp.com/attachments/557...nknown.png GC run on multiple threads! at the same time!! 14:51
i still get these exceptions, weird 14:53
cdn.discordapp.com/attachments/557...nknown.png - moar heapanalyzer screenshoot 15:07
cdn.discordapp.com/attachments/557...nknown.png - the time spread with bytecode loading shows, unsurprisingly, that the core.c.setting is the slowest of them all 15:23
cdn.discordapp.com/attachments/557...nknown.png - spesh log submission messages logged 15:35
little white triangles in the thread timelines are messages
16:05 MasterDuke left 16:21 domidumont joined 16:33 domidumont left 17:11 zakharyas left 18:11 sourceable6 left, notable6 left, benchable6 left, unicodable6 left, releasable6 left, committable6 left, tellable6 left, squashable6 left, coverable6 left, shareable6 left, statisfiable6 left, quotable6 left, bisectable6 left, greppable6 left, bloatable6 left, unicodable6 joined, coverable6 joined, statisfiable6 joined 18:12 greppable6 joined 18:13 releasable6 joined, benchable6 joined 18:30 dogbert17 left 18:31 dogbert17 joined 18:32 dogbert11 joined 18:34 vrurg left 18:35 dogbert12 joined, vrurg joined 18:36 dogbert17 left 18:38 dogbert11 left 19:08 MasterDuke joined 19:30 dogbert17 joined 19:32 dogbert12 left 19:59 MasterDuke left 20:05 MasterDuke joined 21:25 LizBot left 21:27 lizmat left 21:35 lizmat joined 21:45 nwc10 left 21:46 nwc10 joined 21:55 LizBot joined 22:29 LizBot left, lizmat left, lizmat joined 22:31 LizBot joined 22:52 Kaiepi left 23:46 LizBot left, lizmat left