On 5/24/2013 11:12 PM, Diggory wrote:
On 64-bit windows there is also the GetWriteWatch function which lets
you access the dirty flag in the page table = no page faults = super
efficient concurrent generational GC. Just a shame it doesn't exist on
32-bit systems for some reason.
There's all
Vladimir Panteleev, el 24 de May a las 09:55 me escribiste:
When the GC is run:
- Use VirtualProtect to mark all mutable memory pages as read-only
- Add a vectored exception handler to handle the access violation
exception
- Resume the GC thread
I've tried writing a generational GC for D
On Friday, 24 May 2013 at 19:44:19 UTC, Jonathan M Davis wrote:
On Friday, May 24, 2013 20:30:54 Juan Manuel Cabo wrote:
I'd like to know if there is interest in a precise garbage
collector.
There is interest in it, and Rainer Schütze did a talk on it at
DConf. At the
current pace (assuming
On Monday, 27 May 2013 at 17:56:10 UTC, Brian Rogoff wrote:
On Friday, 24 May 2013 at 19:44:19 UTC, Jonathan M Davis wrote:
On Friday, May 24, 2013 20:30:54 Juan Manuel Cabo wrote:
I'd like to know if there is interest in a precise garbage
collector.
There is interest in it, and Rainer
On Tuesday, 21 May 2013 at 20:08:16 UTC, Leandro Lucarella wrote:
I'm interested in what you're describing, but I don't know how
can you
achieve this without fork()ing (or clone()ing in Linux). What
does
remap shared memory using COW in a context where fork()
doesn't
happen? Why do you even
On Thursday, 23 May 2013 at 23:49:20 UTC, Diggory wrote:
You'd either have to distribute a separate .exe for the GC
process or embed the second .exe inside the first and extract
it at runtime to a temporary location, or call the same .exe
with some flag which tells it to turn into a GC. None
On Friday, 24 May 2013 at 06:52:19 UTC, Diggory wrote:
On Tuesday, 21 May 2013 at 20:08:16 UTC, Leandro Lucarella
wrote:
I'm interested in what you're describing, but I don't know how
can you
achieve this without fork()ing (or clone()ing in Linux). What
does
remap shared memory using COW in a
On Friday, 24 May 2013 at 07:48:49 UTC, Vladimir Panteleev wrote:
I don't know why you say that. The satellite process would be
the same executable file as the main process, but started with
a special switch (or environment variable), which will be
handled by the D runtime. Since the two
On Friday, 24 May 2013 at 09:56:25 UTC, Diggory wrote:
The only time I've been able to get it to not show a console
window is when using WinMain...
OK, nvm, it seems it's just that the SUBSYSTEM setting in
VisualD has no effect, you have to set it through a .def file.
On Friday, 24 May 2013 at 09:56:25 UTC, Diggory wrote:
I'm fairly sure windows only shares memory between instances of
the same DLL, not executables.
Oh? I thought Windows treats all modules in the same way. Do you
have a source?
You're still executing part of the user's code and it's going
On 05/24/13 08:52, Diggory wrote:
After doing some further investigation I think I've found a fairly awesome
way of doing garbage collection on windows, hopefully linux has a similar
mechanism. It doesn't require memory mapped files or anything special, it can
be done retroactively, and it
On Friday, 24 May 2013 at 10:20:12 UTC, Vladimir Panteleev wrote:
Leandro wasn't using Windows ;)
True but assuming windows isn't completely degenerate the
overhead of a page fault is going to be pretty close to identical
on the same cpu architecture.
On Friday, 24 May 2013 at 11:15:21 UTC,
On Monday, 20 May 2013 at 12:50:23 UTC, Andrei Alexandrescu wrote:
On reddit:
http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
Enjoy! Discuss!! Vote!!!
Andrei
I know that this is slightly offtopic, since the topic lately
seems to be how to
On Friday, May 24, 2013 20:30:54 Juan Manuel Cabo wrote:
I know that this is slightly offtopic, since the topic lately
seems to be how to make the GC run generationally or with small
footprint (don't stop the world, etc.).
I'd like to know if there is interest in a precise garbage
On 64-bit windows there is also the GetWriteWatch function
which lets you access the dirty flag in the page table = no page
faults = super efficient concurrent generational GC. Just a shame
it doesn't exist on 32-bit systems for some reason.
On Tuesday, 21 May 2013 at 04:52:25 UTC, Diggory wrote:
Either way, at least on windows the separate process would have
to be persistent as creating a new process has a lot more
overhead attached to it than on posix systems. Implicitly
creating a child process is also something a D programmer
On Thursday, 23 May 2013 at 12:39:04 UTC, Vladimir Panteleev
wrote:
On Tuesday, 21 May 2013 at 04:52:25 UTC, Diggory wrote:
Either way, at least on windows the separate process would
have to be persistent as creating a new process has a lot more
overhead attached to it than on posix systems.
Diggory, el 21 de May a las 00:52 me escribiste:
On Monday, 20 May 2013 at 13:55:05 UTC, Regan Heath wrote:
On Mon, 20 May 2013 13:50:25 +0100, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
On reddit:
Dicebot, el 21 de May a las 09:55 me escribiste:
Can't wait to see a prototype for D2 :) I have a feeling that this
may solve at least some of vibe.d latency issues at high concurrency
levels.
I hope I can start porting it to D2 at some (not so far in the future)
point...
--
Leandro
On Tuesday, 21 May 2013 at 20:08:16 UTC, Leandro Lucarella wrote:
I'm interested in what you're describing, but I don't know how
can you
achieve this without fork()ing (or clone()ing in Linux). What
does
remap shared memory using COW in a context where fork()
doesn't
happen? Why do you even
On 2013-05-20 14:50, Andrei Alexandrescu wrote:
On reddit:
http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
Great talk. What's up with the extra minute added in the beginning?
--
/Jacob Carlborg
On Tue, 21 May 2013 08:27:23 +0200
Jacob Carlborg d...@me.com wrote:
On 2013-05-20 14:50, Andrei Alexandrescu wrote:
On reddit:
http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
Great talk. What's up with the extra minute added in the
Can't wait to see a prototype for D2 :) I have a feeling that
this may solve at least some of vibe.d latency issues at high
concurrency levels.
On reddit:
http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
Enjoy! Discuss!! Vote!!!
Andrei
Andrei Alexandrescu:
http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
This link on the YouTube page seems to not be online:
http://dconf.org/2013/talks/lucarella.pdf
Bye,
bearophile
On Mon, 20 May 2013 13:50:25 +0100, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
On reddit:
http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
This may be the Windows Copy On Write feature mentioned in the QA at the
end:
On Mon, 20 May 2013 08:50:25 -0400
Andrei Alexandrescu seewebsiteforem...@erdani.org wrote:
On reddit:
http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
Torrents up, as well as links:
http://semitwist.com/download/misc/dconf2013/
On Monday, 20 May 2013 at 13:55:05 UTC, Regan Heath wrote:
On Mon, 20 May 2013 13:50:25 +0100, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
On reddit:
http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
This may be the Windows Copy On
On Monday, 20 May 2013 at 22:52:33 UTC, Diggory wrote:
And that would work on all modern OSes, plus you don't have the
overhead of creating a new process or even a new thread. Also
immutable memory doesn't need to be mapped, the GC thread can
access it directly.
Copy on WRITE usually don't
On Tuesday, 21 May 2013 at 00:00:13 UTC, deadalnix wrote:
On Monday, 20 May 2013 at 22:52:33 UTC, Diggory wrote:
And that would work on all modern OSes, plus you don't have
the overhead of creating a new process or even a new thread.
Also immutable memory doesn't need to be mapped, the GC
On Monday, 20 May 2013 at 13:55:05 UTC, Regan Heath wrote:
On Mon, 20 May 2013 13:50:25 +0100, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
On reddit:
http://www.reddit.com/r/programming/comments/1eovfu/dconf_2013_day_1_talk_6_concurrent_garbage/
This may be the Windows Copy On
On Tuesday, 21 May 2013 at 04:26:18 UTC, Vladimir Panteleev wrote:
On Monday, 20 May 2013 at 13:55:05 UTC, Regan Heath wrote:
On Mon, 20 May 2013 13:50:25 +0100, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
On reddit:
32 matches
Mail list logo