04:04
FROGGS__ joined
07:49
Ven joined
|
|||
nwc10 | good *, #moarvm | 08:37 | |
jnthn | o/ | 08:41 | |
timotimo | #moarvm, * good | 08:45 | |
08:56
Ven joined
09:47
Ven joined
10:01
Ven joined
|
|||
FROGGS__ | o|) --> (·) | 10:36 | |
11:28
Ven joined
|
|||
nwc10 | jnthn: I baked you another patch, at [email@hidden.address] | 11:53 | |
1% reduction in startup CPU count | |||
(as "threatened" some weeks back) | 11:54 | ||
jnthn | nwc10: I get permission denied...is there a ro url? | 12:14 | |
(I just did git remote add -f nwc10 [the url]) | 12:15 | ||
nwc10 | gitlab.com/nwc10/MoarVM.git | ||
I hope | |||
jnthn | yup, I can git fetch nwc10 now :) | 12:17 | |
nwc10 | excellent | ||
jnthn | Cute patch | 12:18 | |
nwc10 | I can't find anything else similar that's as easy | ||
I can benchmark it at (seemigly) 1% less time to run "Hello world" but I don't trust benchmarks that are under 5% :-/ | 12:19 | ||
dalek | arVM: af7753e | nicholas++ | src/6model/serialization.c: Inline assert_can_read(), which is called 7,133,540 times for perl6-m -e 1 assert_can_read() is a very small function, but 15th highest by Ir count in callgrind's output for perl6-m -e 1. Hence the overhead of making the function call is likely to be similar in size to the function's body. cachegrind reports that inlining it reduces I refs from 515,809,288 to 509,668,666, ie a 1% reduction in CPU instructions needed to run perl6-m -e 1 |
12:21 | |
jnthn | nwc10: Measuring instructions retired in pretty reliable, though, at least :) | 12:22 | |
dalek | arVM: c33c704 | (Jimmy Zhuo)++ | src/6model/reprs/P6opaque.c: removed an repeated function |
13:15 | |
arVM: 364432d | (Jimmy Zhuo)++ | src/6model/reprs/P6opaque. (2 files): Inline some small functions |
13:28 | ||
13:58
avar joined,
ChanServ joined,
timotimo joined,
BinGOs joined,
jnthn joined,
oetiker joined,
moritz joined,
retupmoca joined,
sivoais joined,
tadzik joined,
arnsholt joined,
leedo joined,
nwc10 joined,
Peter__R joined,
masak joined,
Util joined,
[Coke] joined,
TimToady joined,
JimmyZ joined,
psch joined,
rudi_s joined,
flussence joined,
danaj joined,
hoelzro joined,
ingy joined,
camelia joined,
vendethiel joined,
btyler joined,
xiaomiao joined,
FROGGS joined,
harrow joined,
colomon joined,
dalek joined,
betterworld joined,
Ven joined,
ShimmerFairy joined
14:28
Ven joined
14:43
pyrimidine joined
14:58
rurban_ joined
15:32
Ven joined
15:36
ggoebel joined
15:59
Ven joined
|
|||
psch | m: say "m\x0308" | 17:23 | |
camelia | rakudo-moar 4c1f57: OUTPUT«m̈» | ||
psch | eh | ||
i'm not used to tab 4 not being camelia :P | 17:24 | ||
17:49
Ven joined
|
|||
dalek | arVM: bbf73a1 | FROGGS++ | src/core/nativecall.c: decont arg in not 'is rw' param slot This shall unbreak Inline::Perl5. nine++ for reporting it. |
17:51 | |
arnsholt | Has anyone considered running afl-fuzz on Moar? | 18:22 | |
jnthn | It's been mentioned here before, but nobody had les tuits to make it happen yet. | 18:24 | |
arnsholt | Who's discussed it? I have a desktop machine at work that's standing mostly idle. Figured it might be worthwhile to use a core for fuzzing Moar | 18:25 | |
But might be useful to discuss it a bit with someone before just blindly setting of in some direction | |||
jnthn | I can't remember, 'fraid | 18:28 | |
I think if you search the irclogs for this channel you may dig something up | |||
arnsholt | Yeah. I'll grep the clogs | ||
Thanks! | |||
FROGGS | m: my uint8 $a = 200; say $a # is autoboxing to blame? because P6int->get_int is called with bits=64 and unsigned=0 only... | ||
camelia | rakudo-moar c314f4: OUTPUT«-56» | ||
jnthn | I know I saw afl before, and I'm pretty sure it was on this channel :) | 18:29 | |
18:29
ggoebel joined
|
|||
FROGGS would like to know where autoboxing happens | 18:29 | ||
jnthn | FROGGS: We totally ignore the u there at present | ||
FROGGS | jnthn: well, P6int->compose gets it and it gets serialized... but it gets lost later on | ||
jnthn | Yeah, but on lexicals I meant. | 18:30 | |
FROGGS | is that something I could fix? | ||
jnthn | But the answer is likely that QSAT to MAST should be emitting a box_u not a box_i | ||
FROGGS | aha | 18:31 | |
jnthn | I can probably delegate implementation of that stuff to you, but I need to ponder on design a little more. | ||
FROGGS | k | ||
jnthn | The Moar opset already has a bunch of _u though | ||
We just ain't doing anything with 'em yet. | 18:32 | ||
FROGGS nods | |||
jnthn | I also dunno how we're gonna handle this stuff on JVM :S | ||
FROGGS | "differently" :o) | 18:33 | |
nwc10 | jnthn: I baked you another patch at gitlab.com/nwc10/MoarVM | 18:37 | |
only 0.5% less CPU this time | |||
jnthn | Thanks :) | 18:41 | |
arnsholt | I think on JVM you need to do the interpretation of unsigneds on your own | 18:42 | |
But IIRC the VM spec mandates that integer types are stored twos complement, so there's no ambiguity there | |||
jnthn | masak: I'm inclined to reject RT#124226. That's stretching "syntactically" incredibly far. | ||
masak: We also don't keep enough information around to do it realistically cross-compilation unit and I'm not sure we should. | 18:43 | ||
masak: Finally, we do our static analysis on lexical things, not on method calls. We'd have to factor in the meta-object's behavior too, which we don't really know. | 18:44 | ||
uh, shoulda been on #perl6...d'oh | 18:45 | ||
18:45
zakharyas joined
|
|||
dalek | arVM: f37765f | nicholas++ | src/6model/reprs/MVMHash.c: Inline extract_key(), which is called 57306153 times by at_key() and bind_key() at_key() and bind_key() are 2nd and 3rd highest by Ir count in callgrind's output for perl6-m -e 1. Both call extract_key(), which is a simple wrapper around the macro MVM_HASH_EXTRACT_KEY(). Making the function inline reduces the CPU instructions needed to run perl-m -e 1 by about 0.5% |
18:45 | |
nwc10 | at this rate, (obviously) I just need to find about infinity more things and we'll be another 0.5% faster | 18:50 | |
dalek | arVM: 0acf845 | FROGGS++ | src/strings/utf8.c: fix throwing ex when utf8 string is invalid, fixes RT #124185 |
19:05 | |
japhb | nwc10: As you have only two entries in the sequence, there's not enough evidence to assume exponentially decreasing returns, as opposed to (say) a normal distribution around .75%. :-) | 19:12 | |
I suppose that we could assume the distribution is bounded by 100% (because causality) and 0% (because you wouldn't apply a known pessimization) | 19:13 | ||
arnsholt | Heh. The afl-fuzz Makefile is funny: "NOTE: If you can read this, your terminal probably uses white background. This will make the UI hard to read. See docs/status_screen.txt for advice." | 20:12 | |
FROGGS | hehe | ||
japhb | Nice | ||
I once tried to write a colored-output script to autodetect whether the terminal had a light background or dark one and compensate, and I discovered that this seemingly easy thing is essentially completely brain-dead and non-portable. | 20:13 | ||
arnsholt | Yeah. The afl docs just go "use white-on-black or turn colours off entirely" | 20:14 | |
21:41
kjs_ joined
|