Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2013-12-22

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:26 jnap joined #moarvm
00:46 lue joined #moarvm
01:25 cognominal joined #moarvm
01:27 jnap joined #moarvm
02:28 jnap joined #moarvm
03:44 colomon joined #moarvm
04:29 jnap joined #moarvm
05:30 jnap joined #moarvm
08:32 jnap joined #moarvm
09:33 jnap joined #moarvm
10:33 tgt joined #moarvm
10:34 jnap joined #moarvm
11:35 jnap joined #moarvm
12:35 jnap joined #moarvm
12:55 dalek MoarVM: ab3061d | jonathan++ | src/core/bytecodedump.c:
12:55 dalek MoarVM: Correct str constant size in bytecode dumper.
12:55 dalek MoarVM:
12:55 dalek MoarVM: Unbusts it in at least some cases.
12:55 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/ab3061dd6c
12:57 jnthn The other case where it's busted is extops
13:16 dalek MoarVM: c0f8015 | jonathan++ | src/core/bytecodedump.c:
13:16 dalek MoarVM: Detect extops or other op resolution failures.
13:16 dalek MoarVM:
13:16 dalek MoarVM: Don't actually resolve extops yet, but at least now we complain with
13:16 dalek MoarVM: an exception instead of SEGV.
13:16 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/c0f80159eb
13:17 FROGGS cool
13:22 nwc10 jnthn: please don't go offline for another 15 minutes, as I have you another bug I don't know how to solve
13:22 jnthn nwc10: Ah, was gonna, but... :)
13:23 jnthn I wait a moment
13:23 nwc10 was trying to write up e-mail
13:23 jnthn Given I may not be back again until after Christmas :)
13:23 nwc10 OK
13:23 nwc10 will try to do this quickly
13:26 jnthn Oh...that mutex one you found is interesting
13:26 jnthn And may explain some of the exit hangs...
13:26 nwc10 yes, have a diff I think might work
13:27 jnthn oh, no it doens't
13:27 jnthn But hm, yes, interesting :)
13:27 jnthn And great find.
13:28 jnthn yeah, I can see a fix
13:28 jnthn Just release the mutex after the lookup, do the allocation not under it, then re-take it.
13:29 jnthn Taking care to check we didn't lose the race.
13:29 jnthn Adding a count is overkill, I think.
13:30 nwc10 I *think* so too, but I'm not the expert
13:30 nwc10 (Would have written e-mail earler, but I was doing lunch)
13:31 nwc10 email sent, hopefulyl cohereny
13:31 nwc10 gah
13:31 nwc10 hopefully coherent
13:31 jnthn lol
13:33 * nwc10 backlogs #perl6
13:33 jnthn nwc10: src/debug/gc.h has a macro for detecting "is this from formspace"
13:35 nwc10 please apologise to your family for delaying you
13:35 jnthn They're currently yelling at pigeons for stealing crab apples from the tree... :)
13:36 jnap joined #moarvm
13:37 nwc10 naughty pigeons
13:37 nwc10 yes. The SEGV is a read from fromspace, as fromspace is mapped as no access
13:37 jnthn Well, I can see two ways it could be going wrong
13:38 jnthn 1) Somehow the frame doesn't get marked. Seems unlikely, though.
13:39 nwc10 For that macro in src/debug/gc.h, it's that I really don't know enough to know the right place or places to be sticking it to spot how I end up with a register containing fromspace
13:39 nwc10 or, at least, what I think is a register containing fromspace
13:39 jnthn 2) An earlier instruction sticks something into a register that is wrong
13:39 jnthn e.g. the actual not-updated thing comes from elsewhere
13:39 nwc10 my suspicion was (2), but I hadn't even thought of (1)
13:39 jnthn I suspect 2 also.
13:39 nwc10 I don't know how to figure out (2)
13:40 jnthn Well, could try and work out which op loads it at least...
13:40 jnthn If you rwite something that just looks through all the object and string registers in a frame...
13:40 jnthn ...and applies that macro...
13:40 nwc10 I couldn't easily see how to work out where all the object and string registers are - should I be looking at the GC mark code that marks frames?
13:41 jnthn Yeah, moment...
13:41 nwc10 OK
13:41 jnthn src/gc/roots.c:277
13:42 jnthn Basically, there's an array (local_types) that you use
13:42 jnthn It has an entry for every register.
13:42 jnthn (register and local are synonyms in Moar)
13:42 nwc10 OK. Right, I see. I think I can see how to (ab)use that
13:42 nwc10 most brute force is to scan the locals for each OP, and use that macro on each
13:43 jnthn Right :)
13:43 nwc10 will be slow, but will be thorough
13:43 nwc10 I'll try that
13:43 nwc10 but probably not today
13:43 nwc10 thanks for the help.
13:43 jnthn Our register allocation is quite decent so there doesn't tend to be all that many
13:43 nwc10 OK, cool
13:43 jnthn It'll slow things down but it shouldn't be ridiculous.
13:43 * nwc10 shakes fist in the general direction of pigeons in Yorkshire, not that it will help.
13:43 jnthn Especially given you're working on stuff that'll be sat right in cache anyway.
13:43 jnthn Heh, I'm in Stourbridge actually :)
13:44 nwc10 ah OK.
13:44 nwc10 re-aim :-)
13:44 jnthn They seem to have gone away. However, it's now started raining. :)
13:44 nwc10 it's murky here
13:44 nwc10 had been fantastic hoar frost for 3 days
13:44 jnthn It was sunny earlier.
13:44 nwc10 now just mist and gloom
13:44 nwc10 not seen sun since yesterday
13:44 jnthn hah, hoar frost :)
13:44 jnthn I always remember a Yahoo! Answers thread on that
13:45 jnthn "Why is it called whore frost?" :D
13:45 nwc10 http://www.flickr.com/photos/34063820@N00/11434073646/
13:45 jnthn ooh, pretty
13:45 nwc10 more photos, not uploaded anywhere yet
13:47 jnthn Anyway, thanks for the continued bug hunting :)
13:48 nwc10 it's still fun. I can't promise I'll keep going once it's not fun
13:49 nwc10 thanks for the help
13:57 jnthn OK, heading offline again, I think ))
13:57 jnthn See y'all later o/
13:57 nwc10 have fun
13:58 nwc10 my head is definately too befuddled to take advantage of your insights yet
14:01 timotimo bye jnthn
14:01 timotimo i just noticed that the return value of nqp::getpayload of the exception we got is null
14:02 timotimo or maybe that's just my local patch
14:05 timotimo yeah, the payload ends up being null
14:24 jnap joined #moarvm
17:27 tgt joined #moarvm
19:05 FROGGS[mobile] joined #moarvm
19:13 FROGGS[mobile]2 joined #moarvm
20:48 nwc10 jnthn: thanks. nailed it.
21:26 dalek MoarVM: 3577a4e | nicholas++ | src/6model/bootstrap.c:
21:26 dalek MoarVM: In new_type(), assign the name to a C local variable as late as possible.
21:26 dalek MoarVM:
21:26 dalek MoarVM: Previously the assignment was being made just before a call which could
21:26 dalek MoarVM: invoke the GC, and hence cause the C local variable to be left pointing to
21:26 dalek MoarVM: fromspace.
21:26 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/3577a4e6cc
21:27 FROGGS nwc10: this is awesome!
21:27 FROGGS nwc10++
21:51 cognominal joined #moarvm
22:00 nwc10 we grind onwards. MVM_NURSERY_SIZE is now (1024 * 1557)
22:02 FROGGS how do you do that btw? you apply one of your magic patches that does the work?
22:02 FROGGS and then you wait until it explodes?
22:02 FROGGS or do you decrease the nursery size yourself?
22:03 nwc10 was grinding away with this script http://paste.scsys.co.uk/286676
22:03 FROGGS ahh
22:04 FROGGS your -j24 sounds nicer than my -j4 :o)
22:04 nwc10 not actually my machine
22:04 nwc10 and it seems that a lot of the NQP build is not that parallel
22:04 FROGGS yeah
22:05 nwc10 and there are bugs in the parallelism for hte Makefile for rakudo for MoarVM
22:05 FROGGS ohh
22:05 FROGGS that is news to me
22:05 nwc10 couple that with the other seeming bugs, and I figured that it was better to grind away at NQP
22:05 nwc10 I think that when I build -j24 it failed
22:05 nwc10 haven't checked that recently
22:05 FROGGS have not seen patches in that direction either
22:06 nwc10 I didn't try to investigate it
22:06 nwc10 hoped someone else would get there first
22:06 FROGGS I keep it in mind
23:01 [Coke] ugh. I fixed all that on parrot years ago, not looking forward to tackling it again. :)
23:01 FROGGS [Coke]: we do that every few years now :o)
23:34 [Coke] is anyone actually able to run any spectests at this point?
23:40 FROGGS yes, since a few days
23:41 FROGGS [Coke]: jnthn++ fudged a few tests which would hang otherwise
23:58 ssutch joined #moarvm

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary