timotimo | MasterDuke: you are correct, it does not support pairs. if you want to create a hash, you can either nqp::hash(key, value, key, value, ...) or use nqp::bindkey and nqp::deletekey, nqp::existskey, and nqp::atkey | 00:00 | |
geekosaur | hm. what's the pair-like syntax doing, then | 00:01 | |
MasterDuke | timotimo: hmm, then would you know anything about this error then? "Missing serialize REPR function for REPR VMHash (BOOTHash)" | ||
timotimo | huh? it means we can't serialize hashes, but i'm pretty sure we totally can? | 00:02 | |
oh | |||
MasterDuke | github.com/rakudo/rakudo/blob/nom/....nqp#L2550 | 00:03 | |
timotimo | it has no serialize or deserialize functions | ||
MasterDuke | i essentially copied that block and did $name eq '<my variable name>' | 00:04 | |
timotimo | right | 00:05 | |
MasterDuke | and the variable has stuff in it, i iterate over the hash right there for debugging and all the right values are there | ||
timotimo | well, perhaps you can do it with a flat list instead of a hash? | ||
MasterDuke | ha, that's what i was just trying to do | ||
but i was hoping to store a list of pairs | |||
timotimo | you'll most likely be binary-searching through the data rather than looking up by key | ||
MasterDuke | the mapping is linenumber => filename | 00:06 | |
timotimo | how do you get that data, btw? | ||
i mean, how do you store it when you come across these #?file blah comments? | |||
MasterDuke | a token in Grammar that looks for '#line 1 ' | 00:07 | |
timotimo | OK. and how do you store these results? | ||
because if that's a hash, that could also be problematic | |||
MasterDuke | and then in Action: $*W.add_source_line_number($*W.current_line($/), $<filename>) | 00:08 | |
and in World: %!SOURCE_LINE_NUMBERS{$filename} := $line_number | |||
why is a hash problematic? | 00:12 | ||
timotimo | because it apparently can't be serialized | 00:18 | |
though if the world gets serialized, we're in trouble | |||
geekosaur | the hash code of the beast? | 00:19 | |
MasterDuke | but why is %?RESOURCES fine? | 00:31 | |
timotimo | depends on what $Resources.from-precomp creates, i guess | 00:32 | |
it's about what gets added to the world | 00:33 | ||
though i think it's not necessary to explicitly add the objects any more with $*W.add_object | |||
MasterDuke | Object of type BOOTHash in QAST::WVal, but not in SC | 00:35 | |
if i take out the add_object | |||
timotimo | oh, is that what happens if you forget to add_object? | ||
OK | |||
good to know, definitely | |||
MasterDuke | btw, from-precomp returns self.new, inside class Distribution::Resources does Associative { | 00:36 | |
timotimo | OK, that's not repr VMHash, at least | 00:38 | |
i'm still surprised we don't have serialization for VMHash | |||
i'm heading towards bed again | 00:57 | ||
MasterDuke | timotimo: thanks for the help again, later... | 01:32 | |
timotimo | sure :) | 01:34 | |
lizmat | Files=1151, Tests=53712, 214 wallclock secs (12.76 usr 3.88 sys + 1303.98 cusr 122.85 csys = 1443.47 CPU) | 07:44 | |
[Tux] | This is Rakudo version 2016.10-167-g5b2bdeb built on MoarVM version 2016.10-39-g4b9e3a8 | 08:05 | |
csv-ip5xs 3.153 | |||
test 14.244 | |||
test-t 7.040 | |||
csv-parser 16.093 | |||
dalek | kudo/nom: 050cf72 | lizmat++ | src/core/Shaped (3 files): Fast-track .ASSIGN-POS for 1,2,3dimmed arrays Makes them about 40x faster than using the generic N-dimmed ASSIGN-POS |
08:57 | |
kudo/nom: 006f008 | lizmat++ | src/core/ShapedArray.pm: Re-imagine n-dimmed .EXISTS-POS - rewrite using nqp ops - don't use returns Makes it about 1.5x as fast |
10:41 | ||
kudo/nom: b1c41b7 | lizmat++ | src/core/Shaped (3 files): Fast-track .EXISTS-POS for 1,2,3dimmed arrays Makes them about 10x faster than using generic N-dimmed EXISTS-POS |
11:20 | ||
lizmat | afk again& | ||
travis-ci | Rakudo build failed. Elizabeth Mattijsen 'Fast-track .EXISTS-POS for 1,2,3dimmed arrays | 12:11 | |
travis-ci.org/rakudo/rakudo/builds/173219552 github.com/rakudo/rakudo/compare/0...c41b79fd23 | |||
buggable | [travis build above] ☠ Did not recognize some failures. Check results manually. All failures are on JVM only. | ||
dalek | kudo/nom: 2ef2fdb | coke++ | src/ (11 files): fix spelling |
15:45 | |
travis-ci | Rakudo build failed. Will "Coke" Coleda 'fix spelling' | 17:00 | |
travis-ci.org/rakudo/rakudo/builds/173292907 github.com/rakudo/rakudo/compare/b...f2fdb33204 | |||
buggable | [travis build above] ☠ Did not recognize some failures. Check results manually. All failures are on JVM only. | ||
viki | "Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "main"" | 17:01 | |
tony-o | gfldex: i'm pushing some corrections to HTTP::Server::Threaded that should make it usable again | 18:10 | |
gfldex | tony-o: thanks | 18:37 | |
timotimo | awesome | 18:48 | |
lizmat | JVM builds ok for me and makes test also | 18:57 | |
viki | Probably just hitting Travi's resource limits. | 19:07 | |
dalek | kudo/nom: 6ccecb1 | lizmat++ | src/core/ShapedArray.pm: Re-imagine n-dimmed DELETE-POS - rewrite using nqp ops Makes it about 1.3x as fast |
19:28 | |
kudo/nom: 55b9e90 | lizmat++ | src/core/Shaped (3 files): Fast-track .DELETE-POS for 1,2,3dimmed arrays Makes them about 20x faster than using generic N-dimmed DELETE-POS |
19:46 | ||
kudo/nom: 2827edb | lizmat++ | src/core/ShapedArray.pm: Re-imagine n-dimmed BIND-POS - rewrite using nqp ops - rather than using "is raw" on the slurpy, use decont() on the value This allows a faster path to be taken, without needing to index. Makes it about 1.3x faster. Also brought ASSIGN-POS and BIND-POS more in line. |
20:27 | ||
kudo/nom: 9f94525 | lizmat++ | src/core/Shaped (3 files): Fast-track .BIND-POS for 1,2,3dimmed arrays Makes them about 20x faster than using the generic N-dimmed BIND-POS |
20:41 | ||
tony-o | Transactions: 3256 hits | 20:43 | |
Availability: 100.00 % | |||
Elapsed time: 59.98 secs | |||
Data transferred: 0.02 MB | |||
Response time: 0.18 secs | |||
Transaction rate: 54.28 trans/sec | |||
Throughput: 0.00 MB/sec | |||
Concurrency: 9.98 | |||
Successful transactions: 3256 | |||
Failed transactions: 0 | |||
Longest transaction: 0.27 | |||
Shortest transaction: 0.01 | |||
oops | |||
timotimo: H:S:T looks a lot more stable with the changes - ^those are the stats for concurrency 10 and benchmarked for one minute with siege. more usable format here: gist.github.com/tony-o/299adfbcc21...10f5aa82da | 20:44 | ||
timotimo | what, availability is 100% | 20:51 | |
so it wasn't possible to get it to b0rk on any request? | |||
that's quite slow, though :( | 20:52 | ||
tony-o: if only it weren't threaded, we could have a look at a profile ... | 20:56 | ||
tony-o: actually, are you on linux? you could try running the server with perf. it's probably spending a whole lot of time trying to acquire the lock for the fixedsize_alloc and _free ... | |||
i should really get on with that multi-thread optimization thing | |||
i've got a paper in front of me that tells me how to do it, i just need to do it ... | 20:57 | ||
travis-ci | Rakudo build failed. Elizabeth Mattijsen 'Re-imagine n-dimmed DELETE-POS | ||
travis-ci.org/rakudo/rakudo/builds/173357503 github.com/rakudo/rakudo/compare/2...cecb176567 | |||
buggable | [travis build above] ☠ Did not recognize some failures. Check results manually. | ||
timotimo | t/04-nativecall/20-concurrent.t (Wstat: 65280 Tests: 0 Failed: 0) | 21:00 | |
^- only on one of the mac targets | |||
lizmat | ok, I got it to fail: gist.github.com/lizmat/32ce2b17a5a...9a64ca9bef | 21:06 | |
looks like we lost the actual code to be executed | 21:07 | ||
jnthn | I fear it'll be Wed before I get to look at it, so feel free to skip that test for now | 21:17 | |
Unless I get chance during the weekend, which may happen. But I'm shot for today and Mon/Tue I'll be busy with visiting $dayjob colleague. :) | |||
travis-ci | Rakudo build passed. Elizabeth Mattijsen 'Fast-track .DELETE-POS for 1,2,3dimmed arrays | 21:47 | |
travis-ci.org/rakudo/rakudo/builds/173362055 github.com/rakudo/rakudo/compare/6...b9e90b7460 | |||
MasterDuke_ | timotimo: do you happen to know where the "parent-most" code that prints the backtrace when you do --ll-exception is? | 21:50 | |
timotimo | i happen to know where to look | 21:51 | |
MasterDuke_ | i'm in Backtrace.AT-POS, but that doesn't seem to be it | ||
timotimo | find it in nqp/src/HLL/Compiler.nqp | 21:52 | |
travis-ci | Rakudo build errored. Elizabeth Mattijsen 'Re-imagine n-dimmed BIND-POS | 22:56 | |
travis-ci.org/rakudo/rakudo/builds/173371703 github.com/rakudo/rakudo/compare/5...27edb38c87 | |||
buggable | [travis build above] ✓ All failures are due to timeout (1), missing build log (0), or GitHub connectivity (0). All failures are on JVM only. | 22:57 | |
lizmat | good night, #perl6-dev! | 23:17 | |
timotimo | nite | ||
travis-ci | Rakudo build passed. Elizabeth Mattijsen 'Fast-track .BIND-POS for 1,2,3dimmed arrays | 23:39 | |
travis-ci.org/rakudo/rakudo/builds/173374666 github.com/rakudo/rakudo/compare/2...94525ed87f | |||
MasterDuke_ | timotimo: i've found a problem with my current approach. my variable that holds the linenumber => filename info is populated when it's encountered in m-CORE.setting | 23:41 | |
however, since that isn't necessarily at the end of the settings, it doesn't have the rest of the mappings | 23:42 | ||
hmm, what if i create it via EVAL...? | 23:43 | ||
timotimo | that way lies madness :) | 23:48 | |
i wonder why it won't take future changes into account | |||
MasterDuke_ | hmm, i'm assigning it to another variable...maybe i should try binding instead? | 23:49 |