|
github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm Set by AlexDaniel on 12 June 2018. |
|||
|
00:05
AlexDaniel left
00:38
AlexDaniel joined
00:40
MasterDuke joined
00:42
MasterDuke_ joined,
MasterDuke_ left,
MasterDuke_ joined
|
|||
| MasterDuke_ | ugexe: did you mean getlex_* ? | 00:44 | |
|
00:45
MasterDuke left
|
|||
| ugexe | MasterDuke_: no getlexref_*, which is legojit but not exprjit github.com/MoarVM/MoarVM/blob/6c78...3589-L3598 | 00:56 | |
| MasterDuke_ | interesting, doesn't seem to match interp.c github.com/MoarVM/MoarVM/blob/6c78...4486-L4490 | 01:10 | |
|
01:14
lucasb left
01:24
AlexDaniel left
|
|||
| ugexe | what doesn't match? i'm not sure how to really compare them other than they both have uint16s | 01:29 | |
| MasterDuke_ | it looks to me like in interp.c it's just calling MVM_nativeref_lex_s() with the two given arguments, but in graph.c it's calling it with the .lex.outers and .lex.idx of the first given argument | 01:40 | |
| the nqp op only takes one argument github.com/perl6/nqp/blob/master/d...#getlexref | 01:41 | ||
| ah, the nqp op is actually mapped to getlexref_ns, which does in fact call MVM_nativeref_lex_name_s() with only one argument | 01:44 | ||
| ugexe | so everything is correct yeah? | 01:54 | |
| MasterDuke_ | well, i still dont't understand why the difference between interp.c and graph.c. but why the nqp op is difference makes sense | 01:57 | |
| ugexe: btw, did you run spectests with all those templates you PRed? | 01:58 | ||
| ugexe | yeah | 01:59 | |
| the only PR im not sure on is the return_s one, and there are notes on it | |||
| MasterDuke_ | it looks like brrt isn't gonna get a chance to look at them soon. do you have a commit bit? if not do you want me to merge them? | 02:00 | |
| ugexe | i don't have a commit bit, but yeah if you want to merge some now is a good time | 02:01 | |
| i imagine there might be a merge conflict for some once others are merged due to ordering | |||
| MasterDuke_ | ok, i'll give them a once over and merge unless i see something obviously off. probably leave the return_* one for someone else though | 02:04 | |
| ugexe | cool. i expect a performance increase of 5000% | 02:08 | |
| most of these barely show up with 10000 iterations of reading/parsing META6.json. so its mostly superficial | 02:12 | ||
| show up as bailing^ | 02:13 | ||
| i also checked the above routine to make sure the bails were gone afterwards | 02:27 | ||
| Geth | MoarVM: 0b45ec7b78 | (Nick Logan)++ (committed using GitHub Web editor) | src/jit/core_templates.expr Add replace exprjit template |
02:28 | |
| MoarVM: 45e6851f7e | MasterDuke17++ (committed using GitHub Web editor) | src/jit/core_templates.expr Merge pull request #1076 from ugexe/patch-11 Add replace exprjit template |
|||
| MoarVM: 6421e512cb | (Nick Logan)++ (committed using GitHub Web editor) | src/jit/core_templates.expr Add resume exprjit template |
02:32 | ||
| MoarVM: 9f0180fb5b | MasterDuke17++ (committed using GitHub Web editor) | src/jit/core_templates.expr Merge pull request #1077 from ugexe/patch-12 Add resume exprjit template |
|||
| MoarVM: d568e681e7 | (Nick Logan)++ (committed using GitHub Web editor) | src/jit/core_templates.expr Add typeparameterized exprjit template |
02:35 | ||
| MoarVM: 21d815850a | MasterDuke17++ (committed using GitHub Web editor) | src/jit/core_templates.expr Merge pull request #1079 from ugexe/patch-14 Add typeparameterized exprjit template |
|||
| MoarVM: e1dc1b3994 | (Nick Logan)++ | 2 files Add fileno_fh legojit and exprjit template |
02:36 | ||
| MoarVM: 47bb50118e | MasterDuke17++ (committed using GitHub Web editor) | 2 files Merge pull request #1082 from ugexe/jit-fileno-fh Add fileno_fh legojit and exprjit template |
|||
| MasterDuke_ | ugexe: merged the ones that didn't have conflicts, commented on some others | 02:44 | |
| ugexe | thanks | 02:46 | |
|
03:01
travis-ci joined
|
|||
| travis-ci | MoarVM build passed. MasterDuke17 'Merge pull request #1082 from ugexe/jit-fileno-fh | 03:01 | |
| travis-ci.org/MoarVM/MoarVM/builds/511286246 github.com/MoarVM/MoarVM/compare/2...bb50118e66 | |||
|
03:01
travis-ci left
|
|||
| ugexe | MasterDuke_: so MVMint64 is not .64? | 03:34 | |
| .i64^ | |||
| er, thats not what i want to say | 03:36 | ||
| oh i think you were saying i should be using an int instead of a ptr | 03:37 | ||
| I resolved some merge conflicts. Remember you can squash and merge from github.com now so as to avoid the master merges | 03:52 | ||
| MasterDuke_ | right, that would make things simpler | 04:17 | |
| Geth | MoarVM: 0c6b3b1b2a | (Nick Logan)++ (committed by MasterDuke17) | src/jit/core_templates.expr Add indexingoptimized exprjit template (#1078) * Add indexingoptimized exprjit template * Fix int/ptr thinko |
04:19 | |
| MoarVM: 9e5196d8b5 | (Nick Logan)++ (committed by MasterDuke17) | src/jit/core_templates.expr Add typeparameterat exprjit template (#1080) |
|||
| MoarVM: 3c2e98d4bf | (Nick Logan)++ (committed by MasterDuke17) | src/jit/graph.c Add istty_fh legojit (#1084) |
04:20 | ||
| MoarVM: 645a70c0db | (Nick Logan)++ (committed by MasterDuke17) | 2 files Add backtrace and backtracestrings lego and exprjit template (#1085) |
04:25 | ||
|
04:43
travis-ci joined
|
|||
| travis-ci | MoarVM build passed. Nick Logan 'Add istty_fh legojit (#1084)' | 04:43 | |
| travis-ci.org/MoarVM/MoarVM/builds/511308398 github.com/MoarVM/MoarVM/compare/9...2e98d4bfc6 | |||
|
04:43
travis-ci left
04:56
travis-ci joined
|
|||
| travis-ci | MoarVM build passed. Nick Logan 'Add backtrace and backtracestrings lego and exprjit template (#1085)' | 04:56 | |
| travis-ci.org/MoarVM/MoarVM/builds/511309515 github.com/MoarVM/MoarVM/compare/3...5a70c0db62 | |||
|
04:56
travis-ci left
06:27
robertle left
07:31
domidumont joined
09:52
robertle joined
10:01
yoleaux left
|
|||
| lizmat | so are we good for a MoarVM bump ? | 11:08 | |
| timotimo | not really all that keen on putting a cpp file into moarvm's build system :| | 11:25 | |
| lizmat | which is the cpp file ? and why is it in there now ? | 11:26 | |
| timotimo | there's this library called "tracy" | ||
| it's basically telemeh, but a whole lot better in almost every way, and it comes with a viewer tool that is also very good and something telemeh should have gotten but didn't yet | 11:27 | ||
| lizmat | so if I bump MoarVM now, it will get in there indefinitely ? | 11:29 | |
| timotimo | oh no | ||
| i've not yet done anything for it | |||
| lizmat | ok, so your remark had nothing to do with my question about bumping ? | 11:30 | |
| timotimo | oh, that's right | ||
| lizmat | ok :-) | ||
| timotimo | i don't have anything against a bump | 11:31 | |
| lizmat is bumping | 11:33 | ||
|
11:40
zakharyas joined
|
|||
| timotimo | i do have more pressing issues than getting tracy integrated with moarvm, though | 12:16 | |
|
12:31
MasterDuke_ left
|
|||
| timotimo | would it be fine to explode in the heap snapshot profiler with an MVM_panic or MVM_oops if something goes wrong? | 13:17 | |
| lizmat | what would be the alternative ? | 13:19 | |
| timotimo | well, it wouldn't be too good to throw an exception, because that would just happen at any random point | 13:20 | |
| but it could stop in its tracks and leave the partial file | 13:21 | ||
| and just continue running the program without the profiler | 13:22 | ||
| or it could stop the profiler, delete the file, and continue | |||
| lizmat | wouldn't the file potentially have pointers as to why it died ? | 13:35 | |
| timotimo | the kinds of errors we could encounter are "hard drive full", "compression errored out somehow", "memory ran out", stuff like that | ||
| lizmat | Hmmm... I'm a proponent of fail early, fail often | 13:36 | |
|
13:46
AlexDaniel joined
13:58
lucasb joined
14:01
squashable6 left
14:02
discord6 left
14:03
squashable6 joined
14:16
brrt joined
14:17
zakharyas left
14:33
brrt left,
brrt joined
|
|||
| brrt | ohai #moarvm | 14:42 | |
| jnthn | o/ brrt | ||
| brrt | ohai jnthn | 14:44 | |
| I was wondering if you read my post on the reverse linear scan allocator | 14:45 | ||
| jnthn | brrt: No, it's open in a tab for me to read when I get a spare moment :) | 14:46 | |
| (Those have been a bit hard to come by in the last days) | 14:47 | ||
|
15:02
zakharyas joined
15:21
MasterDuke joined,
MasterDuke left,
MasterDuke joined
|
|||
| MasterDuke | jnthn, brrt: hope you don't mind i merged ugexe's PRs that looked fine to me. this PR of mine is very slightly more involved, does anyone have a thought/comment about it? github.com/MoarVM/MoarVM/pull/1073 | 15:23 | |
|
15:26
discord6 joined
15:34
robertle left
15:37
brrt left
|
|||
| timotimo | maybe this time around i'll figure out why "only record a snapshot when a full collection happened" caused crashes last time ... | 15:39 | |
| MasterDuke | re www.nntp.perl.org/group/perl.perl6...g6640.html , `put FatPi.new(309).base(2)` takes 0:00.61elapsed and 114772maxresident. but `put FatPi.new(310).base(2)` takes 59:43.47elapsed and 4212608maxresident before dying with 'MoarVM panic: Memory allocation failed; could not allocate 135193648 bytes' | 15:53 | |
| and the second case can be reproed without using Math::Sequences::Integer | 15:55 | ||
|
16:01
brrt joined
|
|||
| MasterDuke | output from ~1m of perf recording gist.github.com/MasterDuke17/a87e9...84b3a77231 | 16:08 | |
|
16:49
discord6 left,
discord6 joined
16:51
domidumont left
17:03
domidumont joined
17:05
brrt left
17:16
robertle joined
18:05
zakharyas left
19:20
zakharyas joined
19:26
brrt joined
20:01
zakharyas left
20:14
domidumont left
20:16
zakharyas joined
|
|||
| MasterDuke | what's needed to jit param_op_* ? | 20:36 | |
| brrt | a refactor | 20:39 | |
| either that, or I need to understand the SysV ABI and windows ABI better | 20:40 | ||
| iirc, they return a 2-register struct | 20:41 | ||
| and I think in the SysV ABI, that's supposed to be returned in the register pair rax:rcx | |||
| but I can't find documentation evidence that this is supposed to be soe | |||
| and I certainly haven't been able to find what microsoft promises | |||
| ugexe | if you give more details perhaps someone else can find it. i've been the "figure out this undocumented microsoft shit" guy before | 20:43 | |
| brrt | it should be called 'small struct return value' | 21:00 | |
| dogbert17 | brrt: I'm probably way off base but are you looking for stuff like this? www.uclibc.org/docs/psABI-x86_64.pdf | 21:38 | |
|
21:53
brrt left
21:54
zakharyas left
|
|||
| ugexe | stackoverflow.com/questions/390684...r-the-hood (this is about windows) | 21:56 | |
| gcc.godbolt.org/ seems like a useful tool if you dont have easy access to a windows machine | 22:03 | ||
|
22:13
robertle left
|
|||
| AlexDaniel | ugexe++ | 22:56 | |
| (for doing the tough work) | 22:57 | ||