JimmyZ | timotimo: I didn't... | 01:51 | |
timotimo | that's okay | 02:34 | |
02:34
FROGGS_ joined
03:08
eternaleye joined
05:12
lizmat joined
08:35
brrt joined
08:54
woolfy left
|
|||
brrt | jnthn - if present - I'd really like to see your plans / code on bytecode specialisation | 09:02 | |
it owuld be much awesome if we / i could get a running start on the JIT compiler | |||
would | 09:03 | ||
10:36
colomon joined
11:46
colomon joined
12:49
colomon joined
13:54
zakharyas joined
|
|||
dalek | arVM: cd19a1e | jimmy++ | src/6model/reprs/ (4 files): Clean up more static allocate functions in REPRs |
14:17 | |
15:37
lizmat joined
15:48
brrt joined
15:54
lizmat joined
16:07
lizmat_ joined
16:08
woolfy joined
16:33
lizmat joined
17:56
woolfy left
18:36
colomon joined
20:24
benabik joined
|
|||
jnthn | .tell brrt I'm on target to have the initial code available on Tuesday | 20:32 | |
bah, no message bot here | 20:33 | ||
20:50
dalek joined
20:56
benabik joined
21:03
colomon joined
22:40
colomon joined
23:00
lizmat joined
|
|||
jnthn | If anybody here is got at carefully reading code and placing locks, lemme know. | 23:02 | |
timotimo | oh shit :) | 23:04 | |
jnthn | Well, I've a concrete task, but it's one where if it's screwed up we'll get deadlocks. | 23:05 | |
timotimo | this is inside moarvm, aye? | ||
jnthn | yeah | ||
There's some palces the VM ain't threadsafe yet | |||
IO is one of them. | |||
I've just sorta done it (hurriedly) for syncstream, but it really needs a careful analysis. | |||
Like, what if the decoders throw, etc. | 23:06 | ||
We may need a "release stack" | |||
Just like temproots are tossed in the event of an exception. | |||
dalek | arVM: fe0962f | jnthn++ | src/6model/reprs/MVMOSHandle. (2 files): Give MVMOSHandle a mutex slot. We need to protect the various IO handles from multiple threads doing input/output operations. |
23:12 | |
MoarVM: 1261936 | jnthn++ | src/io/syncstream.c: | |||
MoarVM: First pass at locking for syncstream. | |||
MoarVM: | |||
MoarVM: Deals with the immediate issues when multiple threads 'say' at once, | |||
MoarVM: but we really need to take the time to do a systematic pass through IO | |||
MoarVM: and the things it calls (like decode stream) and make sure we never | |||
timotimo | oh yikes | ||
jnthn | Yeah, it's non-trivial, which is why I was asking for volunteers experienced in the dark arts :) | 23:13 | |
I'm fine with doing it, I just try to hand out isolated/explainable tasks :) | |||
timotimo | yes, that's very sensible | 23:14 | |
timotimo is unfortunately not a master in the dark arts of lock placement | |||
jnthn | It's kinda learned the hard way | 23:16 | |
And this being C doesn't help. | |||
In the OO world you can get a lot of sanity by doing good OO design and strongly encapsualting stuff under lock | 23:17 | ||
If you do OO design right. | |||
In the C# world, depressingly, the MSDN advises you to assume OO designs are crap generally and so advise to avoid a perfectly good pattern in a well-designed system... | 23:18 | ||
23:18
woolfy joined
|
|||
timotimo | ouch | 23:25 | |
jnthn | It doesn't quite word it like that. It lists it as a guideline without explaining why. | 23:27 | |
Got quite a bit of $dayjob tasks tomorrow. But Tuesday is for Perl 6. :) | 23:28 | ||
Confident I'll get the specialization code into shape enough that I'm happy to land it. | 23:29 | ||
timotimo: What's state of NQP lex->loc and block inlines? | 23:30 | ||
jnthn may want to join in with that in the next week or two... | |||
Actually, gonna sleep now...but will backlog tomorrow :) | 23:31 | ||
'night |