github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
Geth MoarVM/mildly-faster-startup: 10 commits pushed by (Timo Paulssen)++
review: github.com/MoarVM/MoarVM/compare/b...60f04e3bfb
01:31
timotimo (just a rebase with conflict fixes)
nwc10 good *, #moarvm 04:24
timotimo yo 15:20
nwc10 \o
timotimo slightly surprised by the amount of times read_hash_str_var ends up with a 0 elems hash during startup 15:28
Geth MoarVM/XXX-A-Better-Hash: 49 commits pushed by (Nicholas Clark)++
review: github.com/MoarVM/MoarVM/compare/8...bbbb79e413
15:33
nwc10 People are welcome to test that.
For portability
and performance
and anything else :-) 15:34
It still has some XXX-es in places
but it's probably ready for review
and apart from the "portability" bit, it's got all the bits needed for production
I suspect that, to get it into the next release, it needs some pre-review loving, before jnthn gets back from holiday. 15:35
[Coke] nwc10: does it need anything special from nqp/rakudo? 15:38
nwc10 no. 15:39
[Coke] how can I tell rakudo Configure.pl to build nqp? It's finding one in my path and saying "yes, this is fine" 15:42
nwc10 that I don't know. I'm usually building each in turn to a fixed prefix 15:43
[Coke] is *this* the case when I want --force-rebuild?
nwc10 (And then getting confused because I have 4 sets of checkouts and 6+ prefixes)
timotimo [Coke]: i cannot recommend against using --gen-blah enough :) 16:24
but i think if you --gen-moar=XXX-A-Better-Hash it might do what you watn
[Coke] timotimo: I realized too late it was finding existing nqp because I kept my default --prefix. working on rebuilding my installed rakudo (which i broke) and then testing nwc's branch on mac. 16:28
timotimo oops :) 16:30
nwc10: any reason in particular the order of register_core_repr calls has changed? it doesn't seem ordered alphabetically at least, neither before nor after 16:35
nwc10 it's ordered by rerp ID 16:43
which avoids the need to store the repr ID in the lookup array
timotimo ooh 16:44
[Coke] nwc10: make test passes for rakudo on osx15.5 16:47
running a stresstest now 16:48
nwc10 cool, thanks. I'd tested it on debian. and debian. 17:04
timotimo there's a boatload of changes there; this is now a full new implementation? 17:14
nwc10 yes. 17:22
it's open addressing, Robin Hood hashing
currently with two memory blocks allocated
but that will "migrate" to one
actually, the plan is a bit more batshit than that
a single block
[data ....][control structure][metadata]
[Coke] no failures on make test or make stresstest
nwc10 because it can all mainatain 8 byte alignment 17:23
[Coke]: \o/
[Coke] let me know if you need ... timings or stuff, not just "yes, tests pass"
nwc10 at which point hash copy is
malloc, memcpy, write barriers
I'm curious about timings. But you'd need MoarVM master to compare with.
but dont' stress about timings. Someone else likely will produce timings. 17:24
nwc10 the "OS X passes" is excellent news 17:24
I've fixed my ssh keys on the GCC compile farm
so arguably I can now go test on big endian systems
the code doesn't (shouldn't) have endian related assumptions (yet) 17:25
[Coke] would a windows test be helpful?
nwc10 (that's another optimisation)
[Coke] that's more work, but still doable.
nwc10 yes, a Windows test would be really useful
more useful than timings
don't sweat it
although our usual Windows tester is on holiday :-)
oh, I should go up and check on food 17:26