[Coke] | dogbert17: I think that VM has 4gb | 00:28 | |
b2gills: your "perl6" there should be /opt/rakudo/bin/perl6, aye? | 00:30 | ||
b2gills | [Coke]: Basically “stat $(which perl6); '/home/brad/bin/perl6' -> '/opt/rakudo/bin/perl6'” | 00:43 | |
Tux__ | This is Rakudo version 2017.07-149-g93a5eff7c built on MoarVM version 2017.07-382-g348b4262 | 10:21 | |
csv-ip5xs 1.362 - 1.389 | |||
test 12.364 | |||
test-t 4.421 - 4.464 | |||
csv-parser 14.354 | |||
MasterDuke | buggable: speed 20 | 12:10 | |
buggable | MasterDuke, ???????????????????? data for 2017-08-06–2017-08-25; range: 3.587s–4.925s; 19% slower | ||
MasterDuke | buggable: speed 50 | ||
buggable | MasterDuke, ?????????????????????????????????????????????????? data for 2017-07-26–2017-08-25; range: 3.587s–4.960s; 10% slower | ||
MasterDuke | pretty noticeable speedup for a little while and then it reverted back to where it was before | 12:12 | |
[Coke] | TimToady: I am surprised you haven't patched --version to have a nbsp in the "Perl 6" | 12:17 | |
(... and if you did, I could easily avoid a test nit in the doc suite. :) | |||
is there a name for our unicode strategy? All In? Full Blown? Don't Look Back? | 12:18 | ||
lizmat | speed 10 | 12:36 | |
buggablle: speed 10 | |||
buggable: speed 10 | |||
buggable | lizmat, ?????????? data for 2017-08-12–2017-08-25; range: 4.323s–4.925s; 3% slower | 12:37 | |
AlexDaniel | [Coke]: I don't see curly quotes in error messages and docs, so it is “reasonably conservative” :) | 12:55 | |
dogbert17 | There's some kind of regression both test-t and spectest run a lot slower than just a couple of weeks ago | 12:56 | |
MasterDuke | AlexDaniel: think you can figure out your 'use lib ...' magic to use benchable to find the test-t regression? | 12:59 | |
AlexDaniel | yes, how do I run it? | ||
MasterDuke | huggable: test-t | 13:00 | |
huggable | MasterDuke, nothing found | ||
MasterDuke | huggable: bench | ||
huggable | MasterDuke, github.com/japhb/perl6-bench | ||
MasterDuke | hm, don't remember the invocation to bring up Zoffix's one liner | 13:01 | |
huggable: bench csv | 13:06 | ||
huggable | MasterDuke, export PATH=`pwd`/install/bin:$PATH; cd CSV; for i in $(seq 1 10000); do echo 'hello,","," ",world,"!"'; done > /tmp/hello.csv; time perl6 -Ilib -MText::CSV test-t.pl </tmp/hello.csv | ||
MasterDuke | hm, not so useful for benchable | 13:08 | |
AlexDaniel | why not | ||
one second… | 13:09 | ||
treegrep: test-t.pl | 13:12 | ||
meh no greppable | |||
MasterDuke: where's that test-t.pl file? | |||
Zoffix | [Coke]: keep in mind Windows terminal isn't in UTF-8 by default. | 13:13 | |
C:\Users\zoffix>perl6 -e "say qq|\x[A0]|" | |||
?á | |||
[Coke]: ^ that's what I get on Windows 7 for nbsp | |||
AlexDaniel | Zoffix: does it give garbage for eject symbol too? | ||
Zoffix | AlexDaniel: it has ANSII stuff off. There are no colours and the eject symbol is a "<HERE>" text | 13:14 | |
AlexDaniel | ooooh | 13:15 | |
MasterDuke | Tux/CSV/test-t.pl | ||
AlexDaniel | ah, there it is | ||
Zoffix | huggable: csv | ||
huggable | Zoffix, github.com/Tux/CSV (see `bench csv` for how to run bench) | ||
timotimo | btw, how are we doing compared to pure-perl5 text::csv? | ||
AlexDaniel | bench: HEAD gist.github.com/AlexDaniel/e986722...c6cc54cc03 | 13:17 | |
benchable6 | AlexDaniel, It looks like a URL, but mime type is ‘text/html; charset=utf-8’ while I was expecting something with ‘text/plain’ or ‘perl’ in it. I can only understand raw links, sorry. | ||
AlexDaniel | uhhhh… | ||
Tux__ | timotimo, tux.nl/Talks/CSV6/speed5.html | ||
AlexDaniel | bench: HEAD gist.githubusercontent.com/AlexDan...tfile1.txt | ||
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, starting to benchmark the 1 given commit | |||
AlexDaniel, ¦HEAD: «0.5070» | |||
AlexDaniel | commit: HEAD gist.githubusercontent.com/AlexDan...tfile1.txt | ||
timotimo | wow, we're a lot slower than that ;( | 13:18 | |
AlexDaniel | hm committable is off? :o | 13:19 | |
alright, stdin… | |||
benchable6: HEAD gist.githubusercontent.com/AlexDan...tfile1.txt | 13:20 | ||
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, starting to benchmark the 1 given commit | |||
AlexDaniel, ¦HEAD: ««run failed, exit code = 1, exit signal = 0»» | |||
AlexDaniel | commit: HEAD gist.githubusercontent.com/AlexDan...tfile1.txt | ||
committable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, ¦HEAD(593fa5f): «open is disallowed in restricted setting? in sub restricted at src/RESTRICTED.setting line 1? in sub open at src/RESTRICTED.setting line 9? in block <unit> at /tmp/xIIJoX9zXM line 3? «exit code = 1»» | |||
AlexDaniel | benchable6: stdin gist.githubusercontent.com/AlexDan...tfile1.txt | 13:23 | |
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, STDIN is set to «hello,","," ",world,"!"?hello,","," ",world,"!"?hello,","," ",world,"!"?hello,","," ",world,"!"?hel…» | |||
AlexDaniel | ah-ha, that's how you do it | ||
ok | |||
bench: HEAD gist.githubusercontent.com/AlexDan...tfile1.txt | |||
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, starting to benchmark the 1 given commit | |||
AlexDaniel, ¦HEAD: «10.0102» | 13:24 | ||
AlexDaniel | MasterDuke: now what? | 13:25 | |
10000 is too much to bisect I think | |||
MasterDuke | maybe reduce the # of lines in the input file | 13:26 | |
AlexDaniel | benchable6: stdin gist.githubusercontent.com/AlexDan...tfile1.txt | ||
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, STDIN is set to «hello,","," ",world,"!"?hello,","," ",world,"!"?hello,","," ",world,"!"?hello,","," ",world,"!"?hel…» | |||
AlexDaniel | bench: HEAD gist.githubusercontent.com/AlexDan...tfile1.txt | ||
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, starting to benchmark the 1 given commit | |||
AlexDaniel, ¦HEAD: «3.4240» | |||
AlexDaniel | that should do it | ||
MasterDuke: now I only have to know which commit was “old” | 13:27 | ||
something from 2017-08-08 | |||
MasterDuke | probably around then, yeah | ||
bench: 2017.08 gist.githubusercontent.com/AlexDan...tfile1.txt | 13:28 | ||
benchable6 | MasterDuke, Successfully fetched the code from the provided URL. | ||
MasterDuke, starting to benchmark the 1 given commit | |||
AlexDaniel | that's too new | ||
benchable6 | MasterDuke, ¦2017.08: «3.3240» | ||
MasterDuke | bench: 2017.07 gist.githubusercontent.com/AlexDan...tfile1.txt | ||
benchable6 | MasterDuke, Successfully fetched the code from the provided URL. | ||
MasterDuke, starting to benchmark the 1 given commit | |||
AlexDaniel | and that's too old :) | ||
benchable6 | MasterDuke, ¦2017.07: «4.0608» | ||
AlexDaniel | bench: 67455170ca5 gist.githubusercontent.com/AlexDan...tfile1.txt # let's try this | 13:29 | |
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, starting to benchmark the 1 given commit | |||
AlexDaniel, ¦6745517: «3.8675» | |||
MasterDuke | bench: 2017.07,2017.08 gist.githubusercontent.com/AlexDan...tfile1.txt | ||
benchable6 | MasterDuke, Successfully fetched the code from the provided URL. | ||
MasterDuke, starting to benchmark the 2 given commits | |||
AlexDaniel | oh right, maybe it can figure it out automatically | ||
benchable6 | MasterDuke, benchmarked the given commits, now zooming in on performance differences | 13:30 | |
AlexDaniel sorry for botspam, but hopefully this is a learning process for everyone :) | |||
MasterDuke: hmmm, I think we are getting precomp time in the results | 13:31 | ||
the graph will be more accurate next time you run it | |||
benchable6 | MasterDuke, gist.github.com/78ab5bc2063573260b...f32bf25a9e | 13:33 | |
AlexDaniel | MasterDuke: I think it missed it on the graph | 13:35 | |
there were just a few commits where we had super performance, I guess | |||
and benchable was unlucky enough not to hit it | |||
MasterDuke | gotta go afk for a bit, hope you can find it while i'm gone | 13:38 | |
AlexDaniel | thinking about it, no, benchable does a couple of runs so it will ignore the one with precomp | 13:43 | |
(assuming it precomps fast enough) | |||
bench: 44542c5 gist.githubusercontent.com/AlexDan...tfile1.txt | 14:06 | ||
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, starting to benchmark the 1 given commit | |||
AlexDaniel, ¦44542c5: «3.3824» | |||
AlexDaniel | I don't know. I can't find the same speedup | 14:07 | |
MasterDuke | i wonder if it would be useful to have an option like 'releases' or 'all' that just does nqp/moarvm bump commits? | 14:11 | |
timotimo | AlexDaniel: did you mean to do this in #whateverable? :) | 14:13 | |
AlexDaniel | timotimo: some of it, yes :) | 14:14 | |
timotimo | :P | ||
AlexDaniel | MasterDuke: I was thinking about 2017.07..2017.08 range syntax with an option to test every nth commit | 14:18 | |
timotimo | just support the ... operator :D | 14:19 | |
MasterDuke | heh | 14:21 | |
AlexDaniel: but yeah, that would be good also | 14:23 | ||
Zoffix | timotimo: you use weechat, yes? Any idea how to make activity indicator ignore joins ( i.imgur.com/tSgV5Jm.png )? The only thing I could find only is ignoring joins entirely, but I still want to seem them in channel, I just don't want the activity indicator to tell me there's new content when there was only a join and no one spoke | 14:24 | |
timotimo | i think the buffer list i have shows ones with text (in yellow) and ones with highlights (in purple) | 14:28 | |
i don't actually look at the activity indicator at all | |||
AlexDaniel | anyway, I think I see a little speedup around 46ef1b5, but even there it is slower than HEAD | 14:29 | |
Zoffix | Ah, OK. | 14:30 | |
AlexDaniel | (a speedup that then regressed) | ||
but maybe I don't see the full picture, I don't know. The bot is mentally retarded and does not want to cooperate. | 14:32 | ||
AlexDaniel reboot | |||
timotimo | also i'd like the heap analyzer tool to be a bit faster :P | 14:39 | |
MasterDuke | timotimo: same here | 14:41 | |
timotimo | have you been using it much? | ||
"no, it's too slow" :) | |||
MasterDuke | some, but the speed is a deterrent | 14:42 | |
timotimo | this one's 21 megs big ... | ||
jnthn | I'd like to see you figure problems out faster without using the heap analyzer :P | 14:47 | |
MasterDuke | i wonder how much my cpu effects it? i think i'm getting stage parse times that are at least 10s slower than what i've seen other people mentioning | 14:52 | |
timotimo | jnthn: i'd like to take a closure inside the "prepare snapshot" code that can access the num-objects and other variables, turn those into atomics, and allow the consumer of the model to optionally Promise.start that code to get a progress report; does that sound sane? | 15:09 | |
actually, the consumer can probably handle their own timing of the stuff and calling the closure will just give you the values directly | |||
jnthn | timotimo: Did you see Concurrent::Progress | 15:11 | |
timotimo | yup, but i wanted to exercise atomic ops :D | 15:14 | |
the thing is, the somewhat tight loop that goes through the collectables doesn't have to change (except for using atomic ops of course) | |||
if concurrent::progress uses a supply, it'll call into the reporting code which might be slow | 15:16 | ||
jnthn | Yeah, you'd not want it on a hot path | 15:19 | |
Just every 1000 or 10000 times or something | |||
Geth | rakudo/jit_nativecall: e81414f4d8 | (Stefan Seifert)++ | 2 files Test more integerial return types in NC |
15:21 | |
timotimo | the first implementation (that compiled syntax-wise) already works! | 15:27 | |
it waits for 15 seconds and then gives a little report every five seconds | |||
unfortunately we don't get an approximation of how many entries there are, so we can't get an ETA or percentage | 15:29 | ||
grabbing the size of the file is an expensive operation as we'd still have to find , and \n to get something | 15:30 | ||
dogbert11 | Any SPW gossip? | 15:47 | |
timotimo | tux is showing what he wrote to break damian's perl parser | 15:55 | |
lightning talks right now | 15:56 | ||
tadzik | :D | 15:59 | |
timotimo | not many lightnign talks | 16:09 | |
doesn't help that act didn't display a list or anything | |||
aaand it stopped working :) | 16:13 | ||
dogbert11 | drama :) | 16:20 | |
TimToady | so I guess we need to start thinking (again) about versioned class longnames in order to handle the 6.d OO transition correctlier... | 16:33 | |
that was always part of the rationale for having multiple coexisting versioned modules in the first place | 16:35 | ||
but from time to time we've fallen into the trap of assuming that shortnames are globally unique | 16:37 | ||
they only have to be forced to be unique within a given lexical scope, however | 16:39 | ||
two different lexical scopes can have two different referents for the same shortname, and then that determines which .new to call | 16:40 | ||
most of the rest of the OO versioning falls out of that | |||
timotimo | anyway, the heap snapshot i'm looking at is 21 megs big, but it's just perl6 -e 'say "hi"' :? | 16:44 | |
looks like i've gotta use a --target to get something a bit tamer :) | |||
Geth | rakudo: Leont++ created pull request #1138: Test.pm: Don't print an empty line after a failed test |
18:35 | |
rakudo/nom: b62b40f1c9 | (Leon Timmermans)++ | lib/Test.pm6 Test.pm: Don't print an empty line after a failed test |
18:40 | ||
rakudo/nom: d0a5cfa826 | (Zoffix Znet)++ (committed using GitHub Web editor) | lib/Test.pm6 Merge pull request #1138 from Leont/TestFixes Test.pm: Don't print an empty line after a failed test |
|||
Zoffix wonders if duke-m on GitHub and MasterDuke are the same person | 18:55 | ||
MasterDuke | not that /me is aware of (consciously at least). i'm masterduke17 on GH | 18:59 | |
Zoffix | Ah :) | 19:02 | |
japhb wonders whether there were actually 16+ previous 'masterduke's on GH | 19:07 | ||
It's like the old joke about Preparation H: "What went wrong with Preparations A through G?" | |||
MasterDuke | there was a masterduke already, so 17 is just what i usually stick on if there's a conflict, i've never seen another one of those | 19:09 | |
Zoffix | ZOFLOP: t/spec/S11-modules/nested.t | 19:10 | |
ZOFFLOP: t/spec/S17-lowlevel/atomic-ops.t | |||
ZOFVM: Files=1273, Tests=144618, 132 wallclock secs (20.56 usr 3.76 sys + 2676.71 cusr 226.93 csys = 2927.96 CPU) | |||
AlexDaniel normally decides not to create an account if “AlexDaniel” exists already | 19:11 | ||
MasterDuke | huh, i thought nine fixed t/spec/S11-modules/nested.t | ||
Zoffix | I did two runs and it flopped on both | ||
that's with a fresh checkout of the repo | |||
MasterDuke | nine: ^^^ | ||
timotimo | yo japhb, you still up? | 20:47 | |
pyrimidine | AlexDaniel: was the regression from this point? irclog.perlgeek.de/perl6-dev/2017-...i_14984637 | 21:14 | |
ah, I guess it was :( | 21:15 | ||
AlexDaniel | pyrimidine: um, why so sad? Look | 21:16 | |
bench: 67455170c gist.githubusercontent.com/AlexDan...tfile1.txt | |||
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, starting to benchmark the 1 given commit | |||
pyrimidine has been offline for a while, lurking via moritz++ logs :) | |||
AlexDaniel | pyrimidine: I'm assuming that's when it was fast, right? | ||
benchable6 | AlexDaniel, ¦6745517: «3.8732» | ||
AlexDaniel | bench: HEAD gist.githubusercontent.com/AlexDan...tfile1.txt | ||
benchable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, starting to benchmark the 1 given commit | |||
AlexDaniel, ¦HEAD: «3.4080» | 21:17 | ||
pyrimidine | AlexDaniel: seems to be, at least w/ the benchmarks | ||
AlexDaniel | but it is faster on HEAD! :) | ||
pyrimidine | so, maybe it's the benchmarks? | ||
AlexDaniel | what's the input file that is used in Tux's benchmarks? | 21:18 | |
pyrimidine | AlexDaniel: dunno, but I recall [Tux]++ pointing them out at some point in the backlog | 21:19 | |
I think it's under the Text::CSV report, checking... | 21:20 | ||
AlexDani`: github.com/Tux/CSV I think | 21:49 | ||
Ah, huggable | 21:54 | ||
huggable: csv | |||
huggable | pyrimidine, github.com/Tux/CSV (see `bench csv` for how to run bench) | ||
pyrimidine | AlexDani`: ^^ | 21:55 | |
AlexDaniel | huggable: bench csv | 21:58 | |
huggable | AlexDaniel, export PATH=`pwd`/install/bin:$PATH; cd CSV; for i in $(seq 1 10000); do echo 'hello,","," ",world,"!"'; done > /tmp/hello.csv; time perl6 -Ilib -MText::CSV test-t.pl </tmp/hello.csv | ||
AlexDaniel | pyrimidine: I did that ? | ||
pyrimidine: and with this the numbers on HEAD are better than anything else | |||
samcv | so i've basically made nqp::index just as fast for strands as it is for flat strings | 21:59 | |
gist.github.com/samcv/d819fcf55d9c...f0f935818d | |||
\o/ very exciting | |||
these stats are from actual books and not synthetic representations. the 'concat' test is done of the book being made up of 20 strands | |||
pyrimidine | AlexDaniel: Interesting, so that suggests the latest [TuxCM] numbers are off somehow? | 22:00 | |
AlexDaniel | pyrimidine: no idea | 22:01 | |
pyrimidine | odd | ||
Zoffix | samcv++ That's great news! | ||
samcv | yeah :) | ||
i indexed the book for a real word but misspelled by one letter, so it was approximating actual search for a real word but making sure to go through the whole thing | 22:02 | ||
added numbers for searching for a single grapheme as well | 22:07 | ||
which are 10x faster for a strand based haystack. and 4.5x faster for others (searching a 32bit haystack with 8 bit needle) which is one of the more common things we do | 22:08 | ||
lizmat | samcv++ | ||
samcv | eventually i want to understand how our regex engine works. somebody teach me! | 22:10 | |
b2gills | I think there are very few people who understand the regex engine at all, who are still active with the project | 22:16 | |
samcv | nice. now at least $Haystack ~~ /$needle/ where needle is made up of strands. if i disable flattening the haystack , it's now faster to not flatten than to flatten | ||
at least for that simple case of where needle is a variable | |||
0.57751787 without optimizedindexing and 0.87365031 with | 22:17 | ||
curious how that applies to other things though like more complex regex | |||
AlexDaniel | oh wow. samcv++ | 22:27 |