Geth | rakudo: 91543fe310 | (Elizabeth Mattijsen)++ | src/core/io_operators.pm Channel/Supply to also be closed with sub close() - rather than having to use the method, TIMTOWTDI - somewhere between 2015.11-554-g3b4964b and 2017.08 this regressed - spotted in www.nntp.perl.org/group/perl.perl6...g4550.html |
00:01 | |||||||||||||||||||||||||||||||||
rakudo: f72ad227fb | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Add Telemetry.supervisor - number of supervisor threads running (expected values: 0 or 1) - use Telemetry; signal(SIGINT).tap: &exit; say Telemetry.supervisor # 1 - use Telemetry; say Telemetry.supervisor # 0 |
00:04 | ||||||||||||||||||||||||||||||||||
rakudo: 4b4429cccb | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Add support for Telemetry.general-workers - the number of general worker threads active - also some stuff about supervisor I forgot just now |
00:31 | ||||||||||||||||||||||||||||||||||
rakudo: 58249a529c | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Add support for Telemetry.timer-workers - the number of timer worker threads active |
00:42 | ||||||||||||||||||||||||||||||||||
rakudo: f51a3efc7d | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Add support for Telemetry.affinity-workers - the number of affinity worker threads active |
01:05 | ||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build canceled. Elizabeth Mattijsen 'Add support for Telemetry.timer-workers | ||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/295122291 github.com/rakudo/rakudo/compare/4...249a529c27 | |||||||||||||||||||||||||||||||||||
buggable | [travis build above] ☠ Did not recognize some failures. Check results manually. | ||||||||||||||||||||||||||||||||||
lizmat | hmmm... que? | ||||||||||||||||||||||||||||||||||
Geth | rakudo: 8a0eb7fa6a | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Introducing Telemetry snapper - runs a repeated snap() in a separate Thread - outside the ThreadPoolScheduler, as to prevent interference - defaults to once every .1 second, can be adjusted with snapper($sleep) - can be run in a BEGIN or INIT phaser - will only allow one snapper to be running at any time |
01:27 | |||||||||||||||||||||||||||||||||
lizmat | and that concludes my hacking for today& | 01:35 | |||||||||||||||||||||||||||||||||
Zoffix | m: use Telemetry; snap; await start { snap for ^10000000 } xx 4; snap; say periods[0].cpus | 02:28 | |||||||||||||||||||||||||||||||||
camelia | (signal ABRT)*** Error in `/home/camelia/rakudo-m-inst-1/bin/moar': double free or corruption (!prev): 0x000000000451ee10 *** ======= Backtrace: ========= /lib64/libc.so.6(+0x721af)[0x7f83af9e21af] /lib64/libc.so.6(+0x77706)[0x7f83af9e7706] /l… |
||||||||||||||||||||||||||||||||||
Zoffix | (prolly don't matter, but just something I noticed) | ||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build passed. Elizabeth Mattijsen 'Introducing Telemetry snapper | 03:54 | |||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/295131160 github.com/rakudo/rakudo/compare/f...0eb7fa6afc | 03:55 | ||||||||||||||||||||||||||||||||||
[Tux] |
|
07:30 | |||||||||||||||||||||||||||||||||
lizmat | Files=1229, Tests=74217, 321 wallclock secs (14.49 usr 5.29 sys + 2196.22 cusr 217.02 csys = 2433.02 CPU) | 07:44 | |||||||||||||||||||||||||||||||||
Geth | rakudo: bc00894fd7 | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Add support for Telemetry.general-jobs - the number of jobs waiting for handling by general-workers |
08:41 | |||||||||||||||||||||||||||||||||
DrForr | Does anyone here have recommendations for an alternate window manager for Ubuntu that likes multiple screens? E17 is the closest I've come so far, and wil probaby switch back to that. | 08:50 | |||||||||||||||||||||||||||||||||
Geth | rakudo: e95b02f158 | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Add support for Telemetry.timer-jobs - the number of jobs waiting for handling by timer-workers |
08:55 | |||||||||||||||||||||||||||||||||
travis-ci | Rakudo build errored. Elizabeth Mattijsen 'Add support for Telemetry.general-jobs | 09:13 | |||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/295206891 github.com/rakudo/rakudo/compare/8...00894fd7f6 | |||||||||||||||||||||||||||||||||||
buggable | [travis build above] ☠ Did not recognize some failures. Check results manually. | ||||||||||||||||||||||||||||||||||
lizmat | "An error occurred while generating the build script." ??? | 09:17 | |||||||||||||||||||||||||||||||||
Geth | nqp/master: 9 commits pushed by pmurias++
|
09:23 | |||||||||||||||||||||||||||||||||
AlexDaniel | DrForr: what do you mean by “likes multiple screens”? | 09:39 | |||||||||||||||||||||||||||||||||
e.g. I'm using i3wm and it works just fine with multiple screens, but I don't know if it “likes” them | |||||||||||||||||||||||||||||||||||
lizmat | afk for a few hours& | 09:42 | |||||||||||||||||||||||||||||||||
DrForr | The real issue here, I guess, is that it needs to recognize the second display consistently when it's plugged in. I need to leave the laptop in a "secure location" when I leave for the night, which means unplugging and isolating it, then plugging in when I get to work. I've only found the stock Ubuntu WM that can handle that consistently. | 09:44 | |||||||||||||||||||||||||||||||||
Zoffix | DrForr: using E17 at work without issues. Even got a key to switch between screens. Though it's E21 now. Haven't used more recent verions but Bodhi Linux folks weren't happy with their direction so they forked it. Called Moksha. Using it at home but only on 1 srceen and it seems to be the same as E17 | 10:12 | |||||||||||||||||||||||||||||||||
timotimo | hm, does telemetry work with multiple ThreadPoolScheduler instances active? | 10:22 | |||||||||||||||||||||||||||||||||
nope, only looks at the currently set $*SCHEDULER | 10:24 | ||||||||||||||||||||||||||||||||||
which is okay i guess? | |||||||||||||||||||||||||||||||||||
lizmat: currently the roads between germany and the netherlands are absolutely clogged nearby; the fastest route takes 40 minutes for 40 km, the others have 35 or 55 minutes of congestion added to that | 11:08 | ||||||||||||||||||||||||||||||||||
DrForr | Zoffix: I think I'll settle back on E. | 11:25 | |||||||||||||||||||||||||||||||||
lizmat | timotimo: is it a holiday in DE today ? | 11:36 | |||||||||||||||||||||||||||||||||
DrForr | From what I gather it may as well be :/ We got clipped by the tail end of the storm, apparently. | 11:48 | |||||||||||||||||||||||||||||||||
timotimo | lizmat: it is :) | 11:49 | |||||||||||||||||||||||||||||||||
lizmat | ah, so they're all in line for the Mall in Roermond | ||||||||||||||||||||||||||||||||||
timotimo | okay, the congestion is now 20 mins more than when i first told you about it | ||||||||||||||||||||||||||||||||||
lizmat | yeah, that's only going to get worse | 11:50 | |||||||||||||||||||||||||||||||||
timotimo | why? it's already so late in the day … | ||||||||||||||||||||||||||||||||||
lizmat | most people don't start shopping until after lunch | ||||||||||||||||||||||||||||||||||
timotimo | anyway, the 40 minute route is still at 40 minutes because it bypasses the fast routes that everybody's taking | ||||||||||||||||||||||||||||||||||
should i nom something before i come over? | 11:51 | ||||||||||||||||||||||||||||||||||
lizmat | well, it just turns out we need to be at our GP at 15:10 | 11:52 | |||||||||||||||||||||||||||||||||
getting our flu shots | |||||||||||||||||||||||||||||||||||
timotimo | i see, should i come over afterwards instead? | 11:53 | |||||||||||||||||||||||||||||||||
lizmat | so maybe we should aim for a time *after* that | ||||||||||||||||||||||||||||||||||
yes | |||||||||||||||||||||||||||||||||||
let's say 16:00 at our place ? | |||||||||||||||||||||||||||||||||||
timotimo | OK, that's the address that's on dijkmat.nl? | ||||||||||||||||||||||||||||||||||
Geth | rakudo: ccbfaaa0ab | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Introducing Telemetry report - first version, showing: utilization, supervisor, general-threads, general-jobs, timer-threads, timer-jobs, affinity-threads - will be noted at program exit if there are still snaps around |
12:11 | |||||||||||||||||||||||||||||||||
rakudo: 2f963b14a9 | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Various Telemetry report improvements |
12:51 | ||||||||||||||||||||||||||||||||||
[Coke] | m: use Telemetry; report; | ||||||||||||||||||||||||||||||||||
camelia | Effective index out of range. Is: -1, should be in 0..^Inf in sub report at /home/camelia/rakudo-m-inst-1/share/perl6/sources/522BE83A1D821D8844E8579B32BA04966BAB7B87 (Telemetry) line 344 in sub report at /home/camelia/rakudo-m-inst-1/share/pe… |
||||||||||||||||||||||||||||||||||
lizmat | m: use Telemetry; BEGIN snapper; rimes = ^10000 .hyper.grep: *.is-prime | 12:56 | |||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> Preceding context expects a term, but found infix = instead at <tmp>:1 ------> 3use Telemetry; BEGIN snapper; rimes =7⏏5 ^10000 .hyper.grep: *.is-prime Telemetry Report of Process #9640 (201… |
||||||||||||||||||||||||||||||||||
lizmat | m: use Telemetry; BEGIN snapper; my @primes = ^10000 .hyper.grep: *.is-prime | ||||||||||||||||||||||||||||||||||
camelia | Telemetry Report of Process #9644 (2017-10-31T12:56:29.224068Z) util% sv gt gj tt tj at 34.27 1 1 2 44.35 1 49.82 65.32 1 -1 79.82 1 -1 … |
||||||||||||||||||||||||||||||||||
Zoffix | neat | 12:57 | |||||||||||||||||||||||||||||||||
timotimo | m: use nqp; my $foo = (1, 2, 3).List; say nqp::attrinited($foo, List, '$!todo') | ||||||||||||||||||||||||||||||||||
camelia | P6opaque: no such attribute '$!todo' in type List when trying to check if it's initialized in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||
timotimo | m: use nqp; my $foo = (1, 2, 3).List; say nqp::getattr($foo, List, '$!todo') | 12:58 | |||||||||||||||||||||||||||||||||
camelia | P6opaque: no such attribute '$!todo' in type List when trying to get a value in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||
timotimo | mhh, huh? | ||||||||||||||||||||||||||||||||||
Zoffix | decont | ||||||||||||||||||||||||||||||||||
lizmat | nqp::decont($foo) | ||||||||||||||||||||||||||||||||||
Zoffix | m: use nqp; my $foo := (1, 2, 3).List; say nqp::getattr($foo, List, '$!todo') | ||||||||||||||||||||||||||||||||||
camelia | (Mu) | ||||||||||||||||||||||||||||||||||
timotimo | oh! | ||||||||||||||||||||||||||||||||||
it should probably note in the exception message what type it's being tried on | 12:59 | ||||||||||||||||||||||||||||||||||
Zoffix | Yeah | ||||||||||||||||||||||||||||||||||
lizmat | but it does? | 13:00 | |||||||||||||||||||||||||||||||||
timotimo | it says "List" there, but it should also say "Scalar" | ||||||||||||||||||||||||||||||||||
lizmat | it should have an nqp::iscont() check though | ||||||||||||||||||||||||||||||||||
timotimo | i was under the impression that i was successfully getting at the List rather than the Scalar around it | ||||||||||||||||||||||||||||||||||
lizmat | yeah, but the error message doesn't see the Scalar, unless it checks with nqp::iscont :-) | ||||||||||||||||||||||||||||||||||
timotimo | m: use nqp; my $foo := (1, 2, 3).List; say nqp::attrinited($foo, Perl, '$!ohmygosh') | 13:02 | |||||||||||||||||||||||||||||||||
camelia | P6opaque: no such attribute '$!ohmygosh' in type Perl when trying to check if it's initialized in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||
timotimo | ^- see? it just tells you whatever type it is that *you* passed | ||||||||||||||||||||||||||||||||||
not what actual type the object in question had | |||||||||||||||||||||||||||||||||||
lizmat | still, the error message is correct, as e.g. you can have a List attribute in an Array | 13:03 | |||||||||||||||||||||||||||||||||
timotimo | of course | 13:06 | |||||||||||||||||||||||||||||||||
but you can't have a '$!ohmygosh' attribute from Perl in a List :) | |||||||||||||||||||||||||||||||||||
lizmat | nope | 13:07 | |||||||||||||||||||||||||||||||||
timotimo | and the error message doesn't tell you you're trying to access an attribute from Perl in your List object | ||||||||||||||||||||||||||||||||||
Zoffix | lies | 13:08 | |||||||||||||||||||||||||||||||||
m: class Perl { has $!ohmygosh = 42 }; class List is Perl {}; use nqp; my $foo := List.new; say nqp::attrinited($foo, Perl, q|$!ohmygosh|) | |||||||||||||||||||||||||||||||||||
camelia | 1 | ||||||||||||||||||||||||||||||||||
Zoffix | m: class Perl { has $!ohmygosh = 42 }; class List is Perl {}; use nqp; my $foo := List.new; say nqp::getattr($foo, Perl, q|$!ohmygosh|) | ||||||||||||||||||||||||||||||||||
camelia | 42 | ||||||||||||||||||||||||||||||||||
Zoffix | :) | ||||||||||||||||||||||||||||||||||
timotimo | right, i didn't specify that i meant the List we have in core | ||||||||||||||||||||||||||||||||||
Zoffix | >:D | ||||||||||||||||||||||||||||||||||
timotimo | P6opaque: no such attribute '$!todo' on type List in a <anon|424329104> when trying to check if it's initialized | 13:09 | |||||||||||||||||||||||||||||||||
now this is much more helpful | |||||||||||||||||||||||||||||||||||
(not) | |||||||||||||||||||||||||||||||||||
lizmat | gist.github.com/lizmat/7c38c6dea8b...82c6837893 # note line 21 | 13:11 | |||||||||||||||||||||||||||||||||
somehow it registered *4* jobs in the general workers queue, whereas I would think we only ever need 2 jobs for hypering 100 elements | 13:12 | ||||||||||||||||||||||||||||||||||
at the default batch size of 64 | |||||||||||||||||||||||||||||||||||
jnthn | It's not quite that simple. The batcher/joiner at the end are also scheduled workers. | 13:13 | |||||||||||||||||||||||||||||||||
*ends | |||||||||||||||||||||||||||||||||||
lizmat | aah, ok, that would explain | 13:14 | |||||||||||||||||||||||||||||||||
Geth | nqp/master: 5 commits pushed by pmurias++ | 14:20 | |||||||||||||||||||||||||||||||||
6.d-prep: eb5e248b59 | (Zoffix Znet)++ (committed using GitHub Web editor) | TODO/README.md Update status of naming discussion |
14:30 | ||||||||||||||||||||||||||||||||||
6.d-prep: 2dcf623eb5 | (Zoffix Znet)++ (committed using GitHub Web editor) | TODO/README.md Some language tweaks |
14:35 | ||||||||||||||||||||||||||||||||||
travis-ci | NQP build failed. pmurias 'Test that CONTROL catches labeled control exceptions' | 14:41 | |||||||||||||||||||||||||||||||||
travis-ci.org/perl6/nqp/builds/295318482 github.com/perl6/nqp/compare/62d48...e2f81c694f | |||||||||||||||||||||||||||||||||||
lizmat just committed github.com/rakudo/rakudo/commit/c1...a19d72a161 | 16:15 | ||||||||||||||||||||||||||||||||||
is Geth unresponsive ? | 16:16 | ||||||||||||||||||||||||||||||||||
Zoffix | Geth: help | 16:20 | |||||||||||||||||||||||||||||||||
Geth | Zoffix, Source at github.com/perl6/geth To add repo, add an 'application/json' webhook on GitHub pointing it to geth.niner.name:8888/?chan=#perl6 and choose 'Send me everything' for events to send | use `ver URL to commit` to fetch version bump changes | ||||||||||||||||||||||||||||||||||
Zoffix | Hack is hung | 16:24 | |||||||||||||||||||||||||||||||||
timotimo | oh crap | 16:27 | |||||||||||||||||||||||||||||||||
did you restart it, Zoffix? | |||||||||||||||||||||||||||||||||||
Zoffix | timotimo: no; can you restart it? | ||||||||||||||||||||||||||||||||||
timotimo | i'll do it | ||||||||||||||||||||||||||||||||||
Zoffix | Thanks. | ||||||||||||||||||||||||||||||||||
Geth | rakudo: 8e4d3248f6 | (Elizabeth Mattijsen)++ | lib/snapper.pm6 SNAPPER= environment variable to set snap period |
16:36 | |||||||||||||||||||||||||||||||||
Zoffix | lizmat: perhaps the env var should be "RAKUDO_SNAPPER", to keep up the pattern of all our other env vars: docs.perl6.org/programs/00-running..._Variables | 16:41 | |||||||||||||||||||||||||||||||||
all rakudo ones that is; (We also have PERL6_ and MVM_) | 16:42 | ||||||||||||||||||||||||||||||||||
Or PERL6_SNAPPER, if that stuff is gonna be part of the spec. | |||||||||||||||||||||||||||||||||||
lizmat | .oO( so much more typing ) |
||||||||||||||||||||||||||||||||||
but I hear you :-) | |||||||||||||||||||||||||||||||||||
Zoffix | "PERL6_" is a pain in the butt to type; 'cause you have to release shift in the middle of typing to type "6" | 16:43 | |||||||||||||||||||||||||||||||||
ZofBot: clearly it should be named PERL^_ | |||||||||||||||||||||||||||||||||||
ZofBot | Zoffix, It's too surprising for it not to | ||||||||||||||||||||||||||||||||||
lizmat | that's an advantage the Belgians have | ||||||||||||||||||||||||||||||||||
upload.wikimedia.org/wikipedia/com...layout.png | 16:44 | ||||||||||||||||||||||||||||||||||
:-) | |||||||||||||||||||||||||||||||||||
Zoffix | :D | ||||||||||||||||||||||||||||||||||
Geth | rakudo: 0a8096989d | (Elizabeth Mattijsen)++ | lib/snapper.pm6 s/SNAPPER/RAKUDO_SNAPPER/ |
16:47 | |||||||||||||||||||||||||||||||||
nine | Zoffix: that's what capslock is for | 17:05 | |||||||||||||||||||||||||||||||||
Zoffix | nine: it doesn't help tying "_" :) | ||||||||||||||||||||||||||||||||||
Geth | rakudo: dcf3e28c50 | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 s/x-jobs/x-jobs-waiting/ - because they show the number of jobs still waiting to be executed - makes logical room for x-jobs-completed |
17:06 | |||||||||||||||||||||||||||||||||
Zoffix | *typing | ||||||||||||||||||||||||||||||||||
nine | Zoffix: you still need shift for "_" but it'd be weird otherwise anywy | ||||||||||||||||||||||||||||||||||
Zoffix | .oO( PSIX_SNAPPER ) |
17:07 | |||||||||||||||||||||||||||||||||
timotimo | .o( WHIPPER_SNAPPER ) | 17:08 | |||||||||||||||||||||||||||||||||
lizmat | .oO( RED_SNAPPER ) |
||||||||||||||||||||||||||||||||||
timotimo | .o( SNAPPER_IN_THE_RYE ) | 17:18 | |||||||||||||||||||||||||||||||||
travis-ci | Rakudo build failed. Elizabeth Mattijsen 'Add snapper.pm6 | 18:26 | |||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/295367974 github.com/rakudo/rakudo/compare/2...867ba19d72 | |||||||||||||||||||||||||||||||||||
buggable | [travis build above] ✓ All failures are due to: GitHub connectivity (2 failures). | ||||||||||||||||||||||||||||||||||
Zoffix | Some string concat in Perl will soon be "a *lot* faster: 4x or more": www.nntp.perl.org/group/perl.perl5...46844.html | 19:35 | |||||||||||||||||||||||||||||||||
Above my paygrade, but maybe someone will see some ideas we could steal from that work. | 19:36 | ||||||||||||||||||||||||||||||||||
samcv | Zoffix, probably would be in our optimizer i'd think. optimize multiple calls to a join or something | 19:38 | |||||||||||||||||||||||||||||||||
and make join not have to make a flat string all the time. oh hey i was going to do that. maybe i should start work on the join thingy.. | |||||||||||||||||||||||||||||||||||
Zoffix | :) | 19:39 | |||||||||||||||||||||||||||||||||
DrForr | It's yaks all the way down. | 19:45 | |||||||||||||||||||||||||||||||||
samcv | gonna start by moving more stuff into functions that is used often in the join function. it used to be pretty long and i've ben separating things out of it | 19:46 | |||||||||||||||||||||||||||||||||
to make it more managable | |||||||||||||||||||||||||||||||||||
jnthn | Hm, didn't we make ~ list-assoc already so we can do that opt? | 19:50 | |||||||||||||||||||||||||||||||||
Maybe not | |||||||||||||||||||||||||||||||||||
src/core/Str.pm:multi sub infix:<~>(*@args) { @args.join } | 19:51 | ||||||||||||||||||||||||||||||||||
The candidate exists | |||||||||||||||||||||||||||||||||||
But my %concatenation := nqp::hash('prec', 'r=', 'assoc', 'left', 'dba', 'concatenation'); | 19:52 | ||||||||||||||||||||||||||||||||||
samcv | looks like i can speed up join by making it into a series of concats in a loop. looks like over 500 codepoints it's faster to go with concat than with flat copy | 20:49 | |||||||||||||||||||||||||||||||||
and it can be ridiculous if we have hundreds of thousands of codepoints how much faster it is the new way | |||||||||||||||||||||||||||||||||||
for obvious reasons | |||||||||||||||||||||||||||||||||||
running spectest now :) | |||||||||||||||||||||||||||||||||||
timotimo | "a series of concats in a loop" generates a rope rather than copying the data into one place? | 20:50 | |||||||||||||||||||||||||||||||||
samcv | yes | ||||||||||||||||||||||||||||||||||
i did tests and over 500 codepoints it's faster to do concat | |||||||||||||||||||||||||||||||||||
though i might want to test the upper limit regarding if we have a ton of very small ones | |||||||||||||||||||||||||||||||||||
timotimo | "speed up join" refering to method join/sub join or nqp::join? | ||||||||||||||||||||||||||||||||||
samcv | nqp::join | ||||||||||||||||||||||||||||||||||
timotimo | OK | ||||||||||||||||||||||||||||||||||
huge ropes can have noticable gc overhead | 20:51 | ||||||||||||||||||||||||||||||||||
as it has to go through the entire array of strands and update their pointers | |||||||||||||||||||||||||||||||||||
samcv | what is huge | ||||||||||||||||||||||||||||||||||
timotimo | dunno :) | ||||||||||||||||||||||||||||||||||
samcv | well we have a limit on the number of strands | ||||||||||||||||||||||||||||||||||
timotimo | oh, we do, yeah | 20:52 | |||||||||||||||||||||||||||||||||
samcv | i mean i'm going to do some way to avoid if we have 500 elements of one codepoint each. it may be faster to do the old method | ||||||||||||||||||||||||||||||||||
but for joining 2 strings of 500 codepoints or 3 strings of 250 codepoints it's faster to do a series of concats | |||||||||||||||||||||||||||||||||||
may be even lower if there's no separator i've only tested with a separator | 20:53 | ||||||||||||||||||||||||||||||||||
woo spectest pass :) | 20:54 | ||||||||||||||||||||||||||||||||||
Geth | rakudo: 9381ffbc90 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm Add Worker.total, total # jobs completed by worker - $!completed is the number of jobs completed since last supervisor check - which is useless for telemetry purposes |
21:30 | |||||||||||||||||||||||||||||||||
buggable | New CPAN upload: Test-Color-1.001001.tar.gz by HOLLI cpan.metacpan.org/authors/id/H/HO/...001.tar.gz | 21:36 | |||||||||||||||||||||||||||||||||
samcv | looks like we want an average string length of 300, or we want to have less than 4 elements and average string length of 150. to be faster doing concats instead of normal join | 21:47 | |||||||||||||||||||||||||||||||||
timotimo | you could graph that on a 2d plane | 21:49 | |||||||||||||||||||||||||||||||||
we can train a neural network to make the right decisions every time | 21:51 | ||||||||||||||||||||||||||||||||||
samcv | heh | ||||||||||||||||||||||||||||||||||
timotimo | m: say "so ... 500 frames in 52 seconds; each frame has { 85 * 65 } tiles to update" | 21:52 | |||||||||||||||||||||||||||||||||
camelia | so ... 500 frames in 52 seconds; each frame has 5525 tiles to update | ||||||||||||||||||||||||||||||||||
timotimo | so 55k tiles updated per second? | ||||||||||||||||||||||||||||||||||
without rendering it takes 40 seconds instead of 52 | 21:53 | ||||||||||||||||||||||||||||||||||
Geth | rakudo: 0bdda0866f | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Latest set of Telemetry improvements - s/jobs/tasks/ as we use the word "task" in ThreadPoolScheduler code - s/waiting/queued/, so that we can use the "w" for "working" later - add (general|timer)-tasks-completed info - add wallclock back into report for now (so we can see period size) |
22:04 | |||||||||||||||||||||||||||||||||
timotimo | 22.8s instead of 40 seconds if moarvm is optimized (by gcc i mean) | 22:05 | |||||||||||||||||||||||||||||||||
25.2s if rendering is also turned on | 22:07 | ||||||||||||||||||||||||||||||||||
nice. | |||||||||||||||||||||||||||||||||||
yes, i like this. | 22:08 | ||||||||||||||||||||||||||||||||||
would like another easy 2x please :) | |||||||||||||||||||||||||||||||||||
gfldex | m: my @a = $*IN.IO.lines; | 22:27 | |||||||||||||||||||||||||||||||||
camelia | No such method 'lines' for invocant of type 'IO::Special' in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||
Geth | rakudo: 697e4ecff5 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm Use prefix ++ instead of postfix ++ where possible This seems to have a few % positive effect on test-t --race 20 |
22:46 | |||||||||||||||||||||||||||||||||
bartolin | for some reasons, the rakudo-jvm is unhappy with the assignment to @last-utils in ThreadPoolScheduler.pm: github.com/rakudo/rakudo/blob/697e...er.pm#L494 | 22:50 | |||||||||||||||||||||||||||||||||
it complains about 'Unhandled exception: VMArray representation does not implement bind_pos_native' | |||||||||||||||||||||||||||||||||||
could it be that we don't create a native array there -- even with 'my num @last-utils'? | 22:51 | ||||||||||||||||||||||||||||||||||
jnthn | bartolin: Sounds like that's what is somehow happening, yes | 22:52 | |||||||||||||||||||||||||||||||||
bartolin | even on moar a debug statement (with dd) below that lines gives me: Array @last-utils = [0e0, 0e0, 0e0, 0e0, 0e0] | 22:53 | |||||||||||||||||||||||||||||||||
lizmat | bartolin: could you try changing that to: "my num @last-util; nqp::setelems(@last-utils,NUM_SAMPLES);" ? | 22:54 | |||||||||||||||||||||||||||||||||
oops, my num @last-utils; | 22:55 | ||||||||||||||||||||||||||||||||||
bartolin | lizmat: I'll try, but I doubt that will really help. will take some minutes ... | 22:58 | |||||||||||||||||||||||||||||||||
lizmat | ok, well, I'm pretty confident it will | 22:59 | |||||||||||||||||||||||||||||||||
but then again, I'm also very tired | |||||||||||||||||||||||||||||||||||
so I will see the result tomorrow | |||||||||||||||||||||||||||||||||||
& | |||||||||||||||||||||||||||||||||||
bartolin | o/ | ||||||||||||||||||||||||||||||||||
jnthn | Rest well, lizmat o/ | ||||||||||||||||||||||||||||||||||
bartolin | well, on moar we have a native array as expected. my earlier message was a false alarm (I mixed things up) | 23:14 | |||||||||||||||||||||||||||||||||
on jvm, using nqp::setelems instead of assigning avoids the direct explosion. but still, I can see an error (VMArray representation does not implement shift_native) when running with RAKUDO_SCHEDULER_DEBUG=1 that seems to be caused by @list-utils not being a native array. The error is is caught here, if i'm not mistaken: github.com/rakudo/rakudo/blob/697e...er.pm#L537 | 23:17 | ||||||||||||||||||||||||||||||||||
given that I have no idea why we don't get a native array on jvm, let alone how to fix that issue: would it be acceptable to add another '#?if jvm' and just using 'my @last-utils' for the jvm backend? | 23:21 | ||||||||||||||||||||||||||||||||||
jnthn | bartolin: Might be the best thing to do, in that busted scheduler = busted everything, pretty much | 23:22 | |||||||||||||||||||||||||||||||||
bartolin | jnthn: thanks, will do that | ||||||||||||||||||||||||||||||||||
buggable | New CPAN upload: Test-Color-1.001002.tar.gz by HOLLI cpan.metacpan.org/authors/id/H/HO/...002.tar.gz | 23:56 |