Hi, If a process is forked on Linux, which version of ruby is implemented with the copy-on-write technique?
on 2013-03-18 16:43
on 2013-03-18 17:04
On Mon, Mar 18, 2013 at 4:43 PM, Ken Paul <lists@ruby-forum.com> wrote: > If a process is forked on Linux, which version of ruby is implemented > with the copy-on-write technique? It sounds as if you were mixing OS and Ruby features. If the OS implements this *all* processes benefit from it - regardless of implementation. Kind regards robert
on 2013-03-18 18:13
On Mar 18, 2013, at 12:03 PM, Robert Klemme <shortcutter@googlemail.com> wrote: > It sounds as if you were mixing OS and Ruby features. If the OS > implements this *all* processes benefit from it - regardless of > implementation. True, but ruby's garbage collector up until 2.0.0-p0 used a mark and sweep algorithm that completely obviated the capability of COW friendly OS's (because every object was 'written' during each GC run). In 2.0.0-p0 the garbage collector is implemented in such a way as to allow copy on write. Links: * http://patshaughnessy.net/2012/3/23/why-you-should... * http://benhoskin.gs/2013/02/24/getting-to-know-ruby-2-0 * https://blog.heroku.com/archives/2013/3/6/matz_hig...
on 2013-03-18 18:33
On Mon, Mar 18, 2013 at 6:13 PM, Robert Jackson <robert.w.jackson@me.com> wrote: > > On Mar 18, 2013, at 12:03 PM, Robert Klemme <shortcutter@googlemail.com> wrote: > >> It sounds as if you were mixing OS and Ruby features. If the OS >> implements this *all* processes benefit from it - regardless of >> implementation. > > True, but ruby's garbage collector up until 2.0.0-p0 used a mark and sweep algorithm that completely obviated the capability of COW friendly OS's (because every object was 'written' during each GC run). Good point! Maybe Ken was actually wondering about copy on write friendly Ruby implementations even though the question sounded different. > In 2.0.0-p0 the garbage collector is implemented in such a way as to allow copy on write. Well, pre 2.0 GC does not prevent copy on write - actually it makes heavy use of copy on write. :-) I'd rather say that 2.0 GC is "copy on write friendly" by reducing the amount of memory written during GC runs. > Links: > > * http://patshaughnessy.net/2012/3/23/why-you-should... > * http://benhoskin.gs/2013/02/24/getting-to-know-ruby-2-0 > * https://blog.heroku.com/archives/2013/3/6/matz_hig... Thanks for those links (especially the first one), Robert! Kind regards robert
on 2013-03-18 22:03
On 19/03/2013, at 4:43 AM, Ken Paul <lists@ruby-forum.com> wrote: > Hi, > > If a process is forked on Linux, which version of ruby is implemented > with the copy-on-write technique? 2.0 1.8.6 REE 1.8.7 REE Henry
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.