|
github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm Set by AlexDaniel on 12 June 2018. |
|||
|
02:05
squashable6 left
02:10
squashable6 joined
02:28
squashable6 left
02:31
squashable6 joined
03:14
squashable6 left
03:18
squashable6 joined
04:46
Kaypie is now known as Kaiepi
06:14
zakharyas joined
08:05
squashable6 left
08:06
squashable6 joined
08:21
robertle joined
11:03
lizmat_ joined
11:05
lizmat left
11:12
lizmat_ is now known as lizmat
11:42
zakharyas left
12:30
AlexDaniel left
|
|||
| lizmat | github.com/wangyi-fudan/wyhash | 14:08 | |
| according to rurban: now the fastest (and safe, if I understand this correctly): github.com/rurban/smhasher/ | 14:09 | ||
|
14:47
brrt joined
|
|||
| brrt | ohai #moarvm | 14:48 | |
| someone reached out about the linking proposal, yay | |||
|
14:56
lizmat left
14:58
lizmat joined
|
|||
| timotimo | that's gsoc, right? | 15:19 | |
|
15:23
lizmat left
|
|||
| brrt | yes | 15:25 | |
|
15:26
lizmat joined,
lizmat left
|
|||
| timotimo | very nice | 15:26 | |
| so brrt, i was thinking. perhaps the exprjit should get a set of ops that do memory traversal (offset, load, index) but allow constant-folding at compile/optimize time. that way we wouldn't have to teach the jit what datastructures are fine to constant-fold access to while jitting | 15:29 | ||
|
15:33
lizmat joined
|
|||
| timotimo | does that make any sense? | 15:40 | |
|
16:14
pmurias joined
|
|||
| pmurias | what's the state of this PR: github.com/MoarVM/MoarVM/pull/1049? | 16:15 | |
| a nqp::uname would be an elegant way to go around the lack of bin/uname in browsers | |||
| lizmat | pmurias: afaik it was waiting for the MoarVM release | 16:21 | |
| brrt | timotimo: that's pretty much the plan, yes :-) | 16:35 | |
| timotimo | oh, ok! | 16:36 | |
| what's keeping us? :) | |||
| brrt | the missing ancestor problem | ||
| I'll write a blog about it sometime | |||
| timotimo | why can't we get compile-time evaluation without pulling in the optimization that causes that problem? | 16:37 | |
|
16:40
pmurias left
16:58
TimToady left
16:59
TimToady joined
17:04
brrt left
17:11
dogbert17 left
18:17
robertle left
|
|||
| timotimo | who wants to help me make zstd decompression work? well, it could actually have been the compression part that went wrong | 18:51 | |
| BBIAB | 18:52 | ||
| masak | brrt: I for one would love to read a blog post about the missing ancestor problem | 19:35 | |
|
19:47
[Coke] joined,
[Coke] left,
[Coke] joined
|
|||
| timotimo | so | 20:00 | |
| still looking for volunteers to figure out what my zstd code does wrong :| | 20:01 | ||
|
20:01
[Coke] left
20:04
Kaiepi left
20:05
Kaiepi joined
20:10
brrt joined
20:18
dogbert17 joined
|
|||
| dogbert17 | timotimo: what kind of help do you need? | 20:18 | |
| timotimo | i just made it work | 20:21 | |
| there was a dumb off-by-one in my code :| | |||
| dogbert17 | timotimo++ | 20:22 | |
| timotimo | anyway, i can now decompress some zstd data and if the compression finished get the "leftovers", which is important for my use case | 20:23 | |
| next step will be to implement compression on moarvm's side, i.e. in C | 20:25 | ||
| dogbert17 | and that code will be used by the heapdump analyzer? | 20:27 | |
| timotimo | well, it'll be used to write the snapshots | ||
| the part in the analyzer binds libzstd via nativecall | |||
| dogbert17 | are you going to make a module of the libzstd bindings? | 20:30 | |
| timotimo | yep | ||
| dogbert17 | cool | ||
| timotimo | the code is actually horrifying right now | ||
| have any interest in helping? :P | |||
| dogbert17 | to make the code less horrifying :) | 20:31 | |
| timotimo | yeah | 20:35 | |
| dogbert17 | btw, are the GPW videios (if any) online? | ||
| *videos | |||
|
20:35
Kaiepi left
20:36
Kaiepi joined
|
|||
| timotimo | not yet, i don't think | 20:36 | |
|
20:46
brrt left
|
|||
| nwc10 | a1 | 20:58 | |
| 1 | |||
| le sigh. | |||
| VPN hates me | |||
| you can have a random VPN password too if you like :-) | 20:59 | ||
| 307834 | |||
| (now expired) | |||
| timotimo | that does not fill the emptyness in my soul | 21:01 | |
| i wonder if it's a bad idea to scroll through a few stores to see what kind of laptop you can get for relatively little money at the moment | 21:06 | ||
| tadzik | not sure how relative is your relative, but I got an A485 a few days ago | 21:07 | |
| timotimo | wow enterprise grade security | 21:09 | |
| how did you configure it? | |||
| tadzik | hardware-wise? I think it's the cheapest model :P | ||
| timotimo | but hopefully FHD rather than HD? | 21:10 | |
| nwc10 | timotimo: the fault you had with the laptop you had at GPW can't be fixed? | ||
| tadzik | oh, so not the cheapest model :P | ||
| timotimo | i haven't yet had the opportunity to dig into that more :| | ||
| tadzik | but yes, fullhd | ||
| timotimo | and hopefully more than 4 gigs of ram?!? | ||
| tadzik | 20muf25epb is the model number I have | 21:11 | |
| 16G | |||
| timotimo | yeah, thought so | ||
| tadzik | damn, they make them worse than I thought then :P | ||
| it was the cheapest one from the retailer I used then P: | |||
| timotimo | default is 500 gigs 7200rpm hard drive, but the others are all ssds | 21:12 | |
| tadzik | I have a 512G nvme ssd in this one | 21:13 | |
| timotimo | huh, the ips multitouch is cheaper than the ips anti-glare | ||
| but i'd really rather have anti-glare than multitouch?! | |||
| tadzik | I have the anti-glare | 21:14 | |
| timotimo | mhm | ||
| tadzik | maybe that's why it's more expensive, see :P | ||
| becuase it's more desirable | |||
| timotimo | the cheapest cpu? they have ryzen 3 pro, ryzen 5 pro or ryzen 7 pro | ||
| tadzik | model name: AMD Ryzen 5 PRO 2500U w/ Radeon Vega Mobile Gfx | ||
| timotimo | the way i configured it, it'd be USD970 | 21:15 | |
| but an ssd would be a nice-to-have, too | |||
| BBL, gotta cook | 21:16 | ||
|
21:36
pmurias joined
22:01
brrt joined
22:09
squashable6 left
22:13
squashable6 joined
|
|||
| brrt | timotimo: because hard | 22:14 | |
| roughly; the bug exists because the expression IR is unordered | |||
| because it is unorded, value-based, and a DAG, an expression cannot be strictly assigned to a basic block. | |||
| Because an expression is not assigned to a basic block, we can't know when we're eliminating a value that is referenced by some other block, and so we can't maintain the 'ancestor value' property | 22:15 | ||
| we currently maintain that property by hand, as it were | |||
| humans write code which is correct | |||
| but the optimizer breaks that because it has no (local) way of checking whether the optimization is valid | 22:16 | ||
| timotimo | i'm having kind of a hard time getting much of the expr graph stuff into my brain | 22:22 | |
| do we have anything much like the spesh optimizer tracer? | 22:24 | ||
| which is the thing that dumps a spesh log every few steps of the optimizer | |||
|
22:27
pmurias left,
pmurias joined
|
|||
| brrt | no | 22:39 | |
| we don't have that yet | |||
| it's kind of too late for me to wrap my head around anything | |||
| so.... | |||
| I'll leave the bigger explanation for another day :-) | |||
|
22:50
brrt left
22:51
squashable6 left
22:55
squashable6 joined
23:22
pmurias left
|
|||