[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