github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm Set by AlexDaniel on 12 June 2018. |
|||
00:22
notable6 left,
releasable6 left,
quotable6 left,
linkable6 left,
evalable6 left,
sourceable6 left,
greppable6 left,
statisfiable6 left,
squashable6 left,
committable6 left,
bloatable6 left,
shareable6 left,
bisectable6 left,
tellable6 left,
benchable6 left,
nativecallable6 left,
unicodable6 left,
coverable6 left
00:23
bloatable6 joined,
greppable6 joined,
releasable6 joined,
sourceable6 joined,
tellable6 joined,
benchable6 joined
00:24
bisectable6 joined,
nativecallable6 joined,
statisfiable6 joined,
linkable6 joined,
notable6 joined,
squashable6 joined,
coverable6 joined,
evalable6 joined
00:25
committable6 joined,
shareable6 joined,
quotable6 joined,
unicodable6 joined
02:38
lucasb left
03:42
frost-lab joined
06:22
Geth joined
07:53
zakharyas joined
08:29
cog left
08:30
cog joined
08:36
cog left
|
|||
jnthn | morning o/ | 09:12 | |
lizmat | o\ | ||
MasterDuke | ahoy. anyone else notice this lack of automated checks in any other repos? | 09:15 | |
lizmat | Github Actions is doing fine for my modules | 09:17 | |
or is that not what you meant ? | |||
MasterDuke | no checks performed for github.com/rakudo/rakudo/pull/4334 | ||
09:26
Geth left,
Geth joined
|
|||
lizmat | a bit smaller than the SNxx launches: www.youtube.com/watch?v=p1KolyCqICI | 10:10 | |
10:14
patrickb joined
|
|||
nine | But not a bit less exciting :) | 10:33 | |
lizmat wishes for fewer stupid questions over and over again | 10:39 | ||
nine | Whether they're stupid or not is probably debatable. Fact is that most can be answered with a minute of using an internet search engine... | 10:42 | |
lizmat | well... I guess... | 10:43 | |
what the github ? | 10:47 | ||
nine | So much about the versatility of Github for non-solution finding topics ;) | 10:51 | |
timotimo | very cool to see | 10:58 | |
imagine what nasa could do if they had a little bit of money | 11:00 | ||
lizmat | well, for starters, get more bandwidth between Mars and Earth | 11:02 | |
mars.nasa.gov/msl/mission/communications/ | |||
that's a far cry from the 500Mbit I used to watch the stream :-) | 11:04 | ||
timotimo | why don't they lay some fiber | 11:11 | |
lizmat | .oO( fiber around the sun ) |
11:13 | |
timotimo | fiber to the moon, and let me stream among the stars, and let me know what reception is like on jupiter and mars | 11:28 | |
lizmat | .oO( Timo Sinatra ) |
11:30 | |
timotimo | si, si. | 11:31 | |
11:44
zakharyas left
12:31
frost-lab left
13:26
zakharyas joined
|
|||
lizmat | and yet another Rakudo Weekly News hits the Net: rakudoweekly.blog/2021/04/19/2021-...atch-anew/ | 13:38 | |
jnthn | lizmat++ | 13:55 | |
MasterDuke | m: my int $i = 9223372036854775295; my num $n = $i; say $n; my Num $N = $i.Num; say $N; say $n == $N Â Â Â # nwc10 is this related to what you've been working on? | 14:04 | |
camelia | 9.223372036854775e+18 9.223372036854776e+18 False |
||
MasterDuke | m: use nqp; my int $i = 9223372036854775295; my num $n = $i; say $n; my Int $I = 9223372036854775295; say nqp::tonum_I(nqp::decont($I)) | 14:07 | |
camelia | 9.223372036854775e+18 9.223372036854776e+18 |
||
MasterDuke | github.com/MoarVM/MoarVM/blob/mast...1075-L1083 i believe | 14:09 | |
yep, it's mp_get_double | 14:10 | ||
i wonder if my gmp branch gives a different result | |||
patrickb | MasterDuke: The gmp branch is basically blocking on gitting the build on MSVC running, correct? | 14:13 | |
MasterDuke | yep | 14:15 | |
patrickb | :-( Need more man-power. | ||
MasterDuke | i think i have some tabs open with relevant documentation, maybe i'll give it a go after a bunch of the current PRs i'm working on get merged or closed | 14:21 | |
patrickb | Do you have a Windows machine? | 14:22 | |
MasterDuke | not really. my wife's laptop is windows, but i don't want to use hers. i think you can get trial windows 10 vms or something like that? | 14:24 | |
patrickb | masterduke: give me a shout when you start working on this. I'll see what I can do. | 14:25 | |
MasterDuke | k, thanks | ||
14:26
MasterDuke left
14:28
MasterDuke joined
15:15
zakharyas left
15:24
zakharyas joined
16:17
patrickb left
16:32
Kaeipi is now known as Kaiepi
|
|||
dogbert17 | so what kind of things can spesh do if a program is run with MVM_SPESH_INLINE_DISABLE=1, MVM_SPESH_OSR_DISABLE=1 and MVM_SPESH_PEA_DISABLE=1 ? | 17:22 | |
jnthn | Quite a lot. Eliminate type checks, link candidates directly, lots of lowerings, optimzie based upon spesh plugins. And JIT. | 17:30 | |
[Coke] | (MSVC build, windows) I probably can help there, but don't have a lot of Raku shaped cycles. | 17:39 | |
MasterDuke | [Coke]: the problem is getting github.com/MoarVM/MoarVM/pull/1402 to build on windows. at this point i know so little there's nothing i can just ask you to test | 18:04 | |
whoops, the num -> int coercion is even more broken on the jvm | 18:05 | ||
r: use nqp; my int $i = 9223372036854775295; my num $n = $i; say $n; my Int $I = 9223372036854775295; say nqp::tonum_I(nqp::decont($I)) | 18:06 | ||
[Coke] | no promises on time line, but I will look at it eventually. | ||
camelia | 9.223372036854775e+18 9.223372036854776e+18 |
||
9223372036854774784 9223372036854774784 |
|||
MasterDuke | [Coke]++ | ||
nine | In the "parameter '$bytes'; expected Blob but got Supplier::Preserving" case, I've gutted spesh down to just optimizing hllize, decont, findmeth and speshresolve. Any bets on which of these optimizations is the cause? | 18:12 | |
nwc10 | you know the answer? Or your asking for sort-of-help? | ||
nine | I actually meant it quite literally :D But help would of course be appreciated, too, as I don't know the answer yet | 18:13 | |
timotimo | is this the right spot to start the spesh bisect tool? | 18:15 | |
nine | I already know that it's Spesh of 'pipe' (cuid: 16394, file: SETTING::src/core.c/Proc/Async.pm6:142 | 18:16 | |
MasterDuke | the jvm version of tonum_I is just`return getBI(tc, value).doubleValue();`. i'm surprised that's incorrect | 18:17 | |
nine | nwc10: btw. thanks for making it so easy to disable hash randomization. Makes debuggin spesh a lot easier | ||
nwc10 | I didn't do anything *amazing*. I just kept a feature of the old code. | ||
nine | But IIRC in the old code one had to make 2 changes. And I never could remember in which file | 18:18 | |
nwc10 | OOOOH, there's still something that Perl 5 does better... | 18:19 | |
Use of uninitialized value of type Any in numeric context in block at /home/nick/test/powfrom.p6 line 77 | |||
Perl 5 would have told me the array name. | 18:20 | ||
I don't think that it would have told me more than that | |||
I wrote: unless $would-score < @score[$pow] // 999; | |||
I meant: unless $would-score < (@score[$pow] // 999); | |||
but I would have got better diagnostics in Perl 5 | 18:21 | ||
davem++ | |||
nine | steal it! | ||
When you think it can't get any more mysterious... the exact same command that gives me that error every single time in the one terminal window succeeds every time in the other window | 18:22 | ||
nwc10 | To "quote" my daughter "beschäftigt" but I don't think that there's yet an emoji for this - she would declare this with a hand presented palm-forwards with the thumb across the palm | ||
nine: Address randomisation, whatever it's called? | 18:23 | ||
sip hash is also salted - you might need to stop that? | |||
nine | There's nothing random about this. It's a 100 % success vs. 100 % failure | 18:24 | |
[Coke] | not something silly like different path? | ||
(or env vars?) | |||
nine | exact the same path. Almost the same env vars, except for BASH_REMATCH, COMP_WORDBREAKS, GPG_TTY, KONSOLE_DBUS_SESSION, PIPESTATUS and SHELL_SESSION_ID | 18:26 | |
18:27
zakharyas left
|
|||
nine | If you want to bet, the stakes just got raised. decont seems to be only involved for its propagation of spesh facts | 18:28 | |
Which suits me as my guess was speshresolve from the start | 18:29 | ||
MasterDuke | yup, on gmp branch i get 9.223372036854775e+18 for both | 18:40 | |
dogbert17 | nine: I'm sure you already know that the t/spec/S17-supply/return-in-tap.t problem is not due to inlining, pea or OSR. | 18:47 | |
jnthn: thx for explaining this, much appreciated | |||
nine | dogbert17: I didn't _really_ know as that problem is so elusive | ||
dogbert17 | I did a run with all three flags set and it did fail in the usual manner after some time | 18:49 | |
nine | nice | ||
MasterDuke | interesting. my speedup_exponentiation_by_positive_Ints rakudo branch is only 0.2s faster than rakudo master when moarvm is on the gmp branch | ||
it's faster than moarvm master/rakudo master, but slower than moarvm master/rakudo speedup_exponentiation_by_positive_Ints | 18:50 | ||
nine | Yeah, it's definitely speshresolve | 18:51 | |
dogbert17: can you try a run with the case MVM_OP_speshresolve: block commented out in src/spesh/optimize.c line 2794? Maybe at least return-in-tap.t and cur-candidates.t share the same bug | 18:53 | ||
MasterDuke just force pushed the gmp branch, but it's just a rebase up to master | 18:54 | ||
timotimo | nine: i think different env vars can cause butterfly-effect-like changes throughout the memory layout? | ||
nine | timotimo: definitely. I've seen that. What's so odd bout this case is that it doesn't seem to care about other env vars. I can add them to the command line or leave out ones like MVM_SPESH_LIMIT | 18:55 | |
Though I haven't really done a thorough test as it'd only be a distraction | |||
timotimo | want to try rr's chaos mode maybe? | 18:57 | |
nine | And I'd think that disabling all these spesh opts individually would have quite some effect on memory layout. But it's perfectly consistent | ||
nwc10 | in NQP, what's the most space efficient way of storing 309 values in the range 0-255 ? | ||
(actually 0-16) | |||
"a string" ? | |||
timotimo | hm, well, the spesh allocator allocates in very big chunks and frees them in groups as well | 18:58 | |
and while spesh is working, the thread will usually not do malloc for anything else so that's consistent, too, i think? maybe all these allocations even go directly to mmap because of their size? | |||
nine | nwc10: that or create a native array type | 18:59 | |
timotimo | yeah check the tests for how that is done, it's potentially also used somewhere else already | 19:00 | |
nwc10 | I can't spot code in NQP that creates bufs | ||
nine | nwc10: see t/nqp/102-multidim.t line 119 | ||
nwc10 | I am fail | ||
thanks | |||
erk, that looks complex. | 19:01 | ||
nine | nwc10: oh, much better: t/moar/13-writeint.t | ||
nwc10 | is there an efficient way to represent initialising this in NQP source code? | 19:02 | |
basically I have a 309 value lookup table. | |||
nine | nwc10: I knew you would need that so I implemented the array_type trait for NQP classes back in 2018 8) | ||
nwc10 | dammit, you and your time machine. | ||
OK, so `nqp::atpos_i($buf, $i)` seems to be how to read a value | 19:03 | ||
I'm not sure how to generate the initialiser | |||
nine | Lots of bindpos_i I guess | ||
nwc10 | that's a bit pants | ||
I'd prefer something that ends up as a blob in the compiled NQP source. So a string might actually be the way to go | 19:04 | ||
nine | If you do the bindpos at BEGIN time, the array will be written to to the precomp file | 19:05 | |
timotimo | hm, we can't serialize a 8bit unsigned integer array? | ||
nwc10 | oh my, there aren't many tests for BEGIN in nqp | ||
nine | Welcome to the underground! Remember, you can always edit bytecode files directly | 19:06 | |
nwc10 | I might defer playing with this until tomorrow. ie "Morgen". which I'm sure always translates as "morning" :-) | ||
I'm not that crazy. Yet. | 19:07 | ||
but thanks for the BEGIN hint | |||
and technically I'm both slow and off-topic, but my understanding was that editing/generating bytecode directly was Twisted. | 19:08 | ||
lizmat | well... changing bytecode at runtime isn't ? :-) | 19:09 | |
nine | nwc10: it does. Capital M is "morning", lower case m means tomorrow | ||
japhb adds another mental entry to "ways human languages are weird" | 19:26 | ||
dogbert17 | nine: will give it a shot | 19:28 | |
lizmat | FYI: news.perlfoundation.org/post/cat-t...april-2021 | 19:29 | |
dogbert17 | nine: unless I messed up and misunderstood your instructions (quite possible) the error is still present | 19:36 | |
nine | darn | ||
dogbert17 | I removed everything from (inclusive) - case MVM_OP_speshresolve: to (inclusive) the break; before the nect case, i.e. MVM_OP_islist: | 19:37 | |
19:39
Kaiepi left,
Kaiepi joined
|
|||
nine | Oh, even speshresolve might be a victim here. One of bad facts | 19:48 | |
How we got that wrong fact though would be much easier to find out if the bug didn't appear when run in gdb or rr | 19:49 | ||
20:03
ChanServ sets mode: +o jnthn,
jnthn sets mode: +b mst!*@*
20:04
zakharyas joined,
mst was kicked by jnthn (mst)),
ChanServ sets mode: -o jnthn
20:26
lucasb joined
|
|||
timotimo | nwc10: you're perhaps already aware of the difference between "umfahren" and "umfahren"? | 20:35 | |
nwc10 | no. please fill me in | ||
timotimo | well, one means "drive around" or "circumnavigate", the other means "run over" | 20:37 | |
the difference is in whether you stress the first or the second part | 20:38 | ||
nwc10 | thanks. I was struggling | ||
it's an ASCII joke! | |||
20:38
chansen_ joined
|
|||
timotimo | you mean because ascii doesn't have encoding for stress in spoken words or something? | 20:39 | |
japhb | And here I thought my old anecdote about the sales manager that couldn't pronounce their VP's name and kept calling them dog kibble was good, but damn. | ||
nwc10 | yes, something like that | ||
timotimo | hm, what's that, doc kimble or something? | 20:40 | |
that reference doesn't seem to want to resolve for me | |||
MasterDuke | re "Morgen", is the capital pronounced, or do you just know from context when spoken aloud? | 20:41 | |
nwc10 | context | 20:42 | |
and it might be ambigous | |||
timotimo: as to kibble, search for it in raw.githubusercontent.com/Perl/per...rlfunc.pod | 20:43 | ||
I don't think that I can link to the line number | |||
and it's a comment, so it doesn't get rendered | |||
timotimo | not with raw, no | 20:44 | |
oh, i know what kibbles are | |||
i don't know why a sales manager's vp would be called something like that | 20:45 | ||
japhb | No, it was a real thing that I watched in my first job, and it was the translation of what she was saying instead of his name. Sitting at the bottom of the chain of command, I used to get amused watching the sales VP bug out whenever she did that, but wouldn't say anything because she was dating his boss's boss. Years later that bit of schadenfruede turned into an appreciation of how important it is to | 20:46 | |
get people's names right, or rather to call them what they wish to be called. I've worked with people who were happy I put so much effort in, and people who plainly stated I would never get it right and to call them by a nickname instead. | |||
His last name was "Fröhlich". Apparently if you get that first vowel wrong, it's a brand of dog kibble instead. | 20:47 | ||
timotimo | oh, frolic | ||
lizmat | which would be the Dutch pronounciation :-) | 20:49 | |
not sure what the significance is of that :-) | |||
[Coke] | I have a coworker that I've worked with at 3 different companies. wasn't until about a year ago he told me I've been saying his name wrong for a decade. | 20:50 | |
japhb | OUCH | ||
[Coke] | (stress on the wrong syllable). I do try in most cases (esp. now!) to ask what people want to be called and try to follow through. | 20:51 | |
... and now if I try to think about it too much I can't remember which is the right syllable. :) | |||
japhb | Oof. | ||
20:58
dogbert11 joined
21:00
dogbert17 left
21:04
zakharyas left
21:25
lizmat_ joined
21:28
sena_kun left,
lizmat_ is now known as lizmat
21:32
sena_kun joined
21:38
dogbert17 joined
21:42
dogbert11 left,
sena_kun left
21:43
sena_kun joined
22:11
sena_kun left
|
|||
Geth | MoarVM: MasterDuke17++ created pull request #1474: Use correct size for size argument to write() |
22:27 | |
ugexe | `static MVMint64 write_bytes` is that correct now that its returning a size_t? | 22:41 | |
moon-child | considering size_t is unlikely to ever be greater than 64 bits, it's unlikely to be _incorrect_ | 22:46 | |
MasterDuke | but yeah, good catch, also changing send() now... | 22:47 |