Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #17430
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Newsgroups | comp.lang.forth |
| Subject | Re: Windows8 |
| Date | 2012-11-20 10:48 +0000 |
| Organization | Institut fuer Computersprachen, Technische Universitaet Wien |
| Message-ID | <2012Nov20.114831@mips.complang.tuwien.ac.at> (permalink) |
| References | (6 earlier) <50aaa2e4$0$293$14726298@news.sunsite.dk> <7xy5hx466p.fsf@ruckus.brouhaha.com> <50aaad2a$0$289$14726298@news.sunsite.dk> <7xfw45use4.fsf@ruckus.brouhaha.com> <1706892.AHFubqArz1@sunwukong.fritz.box> |
Bernd Paysan <bernd.paysan@gmx.de> writes:
>Objective-C (as used in iOS) is probably the most
>widely known example of automatic reference counting, the advantage is
>that all memory allocation and freeing is synchronous with the program,
>and thus predictable. A GC run is not predictable, and one reason why
>Android is perceived as "lagging" are the GC runs.
Overwriting a reference can cause an arbitrarily long lag (consider
freeing the last reference to a large interlinked data structure,
e.g. a large tree). Yes, one could use techniques like those used by
real-time GC to distribute that lag.
>A GC run is also polluting the cache, as it looks through a significant
>portion of the memory of an application. You don't want that on a
>modern CPU, you want spacial and temporal locality.
GC is pretty good on spatial locality, especially copying GC.
Reference counting is not so good on spatial locality, but may be good
on temporal locality; and for cache pollution it's much worse: it
dirties (writes to) the referenced cache line every time a reference
is copied or overwritten, which means that lots of cache lines become
dirty and have to be written back to main memory later.
>I'm for automatic memory deallocation, as it reduces the burden of the
>programmer, but IMHO, reference counting is the more Forthy way.
I don't see that at all. A DUP of an address will increase the
reference count and thus become an expensive operation. Also, given
the lack of type checking in Forth, how do you know that the DUP
duplicates an address and not just something that looks like one?
Conservative garbage collection fits ok into Forth. If you want it
more Forthy, I think the way to go is to be less automatic. You still
want to avoid the problems of ALLOCATE and FREE, though. One
promising approach is region-based allocation, but I have yet to see
that promise turned into a useful region allocation library for Forth.
- anton
--
M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
New standard: http://www.forth200x.org/forth200x.html
EuroForth 2012: http://www.euroforth.org/ef12/
Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Windows8 visualforth@rocketmail.com - 2012-11-02 08:41 -0700
Re: Windows8 Brad Eckert <hwfwguy@gmail.com> - 2012-11-02 11:12 -0700
Re: Windows8 visualforth@rocketmail.com - 2012-11-06 09:05 -0800
Re: Windows8 Jason Damisch <jasondamisch@yahoo.com> - 2012-11-12 07:10 -0800
Re: Windows8 stephenXXX@mpeforth.com (Stephen Pelc) - 2012-11-12 17:27 +0000
Re: Windows8 visualforth@rocketmail.com - 2012-11-21 17:48 -0800
Re: Windows8 visualforth@rocketmail.com - 2012-11-07 20:44 -0800
Re: Windows8 Jason Damisch <jasondamisch@yahoo.com> - 2012-11-12 07:15 -0800
Re: Windows8 Brad Eckert <hwfwguy@gmail.com> - 2012-11-12 07:59 -0800
Re: Windows8 "Elizabeth D. Rather" <erather@forth.com> - 2012-11-12 07:55 -1000
Re: Windows8 "Ed" <invalid@nospam.com> - 2012-11-14 20:04 +1100
Re: Windows8 anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-11-14 17:01 +0000
Re: Windows8 "Ed" <invalid@nospam.com> - 2012-11-18 11:14 +1100
Re: Windows8 anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-11-19 14:25 +0000
Re: Windows8 "Elizabeth D. Rather" <erather@forth.com> - 2012-11-19 08:09 -1000
Re: Windows8 anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-11-20 09:55 +0000
Re: Windows8 mhx@iae.nl (Marcel Hendrix) - 2012-11-25 10:56 +0200
Re: Windows8 Bernd Paysan <bernd.paysan@gmx.de> - 2012-11-25 16:46 +0100
Re: Windows8 Doug Hoffman <glidedog@gmail.com> - 2012-11-19 16:21 -0500
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-19 13:46 -0800
Re: Windows8 Doug Hoffman <glidedog@gmail.com> - 2012-11-19 17:05 -0500
Re: Windows8 "Elizabeth D. Rather" <erather@forth.com> - 2012-11-19 12:14 -1000
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-19 14:30 -0800
Re: Windows8 "Elizabeth D. Rather" <erather@forth.com> - 2012-11-19 12:53 -1000
Re: Windows8 Doug Hoffman <glidedog@gmail.com> - 2012-11-19 17:44 -0500
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-19 14:52 -0800
GC (was Re: Windows8) Doug Hoffman <glidedog@gmail.com> - 2012-11-26 11:44 -0500
Re: GC Paul Rubin <no.email@nospam.invalid> - 2012-11-26 11:44 -0800
Re: GC Doug Hoffman <glidedog@gmail.com> - 2012-11-28 06:35 -0500
Re: GC Paul Rubin <no.email@nospam.invalid> - 2012-11-29 11:58 -0800
Re: GC albert@spenarnc.xs4all.nl (Albert van der Horst) - 2012-11-30 01:46 +0000
Re: GC Paul Rubin <no.email@nospam.invalid> - 2012-11-29 21:14 -0800
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-19 14:42 -0800
Re: Windows8 Doug Hoffman <glidedog@gmail.com> - 2012-11-19 17:56 -0500
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-19 15:14 -0800
Re: Windows8 Doug Hoffman <glidedog@gmail.com> - 2012-11-19 18:45 -0500
Re: Windows8 "Elizabeth D. Rather" <erather@forth.com> - 2012-11-19 14:18 -1000
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-19 16:18 -0800
Re: Windows8 Doug Hoffman <glidedog@gmail.com> - 2012-11-19 19:01 -0500
Re: Windows8 "Elizabeth D. Rather" <erather@forth.com> - 2012-11-19 12:58 -1000
Re: Windows8 Bernd Paysan <bernd.paysan@gmx.de> - 2012-11-20 02:23 +0100
Re: Windows8 anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-11-20 10:48 +0000
Re: Windows8 Alex McDonald <blog@rivadpm.com> - 2012-11-20 07:56 -0800
Re: Windows8 anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-11-21 15:03 +0000
Re: Windows8 Hugh Aguilar <hughaguilar96@yahoo.com> - 2012-11-23 05:58 -0800
Re: Windows8 Mark Wills <forthfreak@gmail.com> - 2012-11-20 02:13 -0800
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-20 08:57 -0800
Re: Windows8 "David N. Williams" <williams@umich.edu> - 2012-11-20 16:56 -0500
Re: Windows8 mhx@iae.nl (Marcel Hendrix) - 2012-11-25 11:20 +0200
Re: Windows8 rickman <gnuarm@gmail.com> - 2012-11-14 16:36 -0500
Re: Windows8 "Elizabeth D. Rather" <erather@forth.com> - 2012-11-14 12:12 -1000
Re: Windows8 rickman <gnuarm@gmail.com> - 2012-11-14 17:46 -0500
Re: Windows8 "Elizabeth D. Rather" <erather@forth.com> - 2012-11-14 13:12 -1000
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-14 18:12 -0800
Re: Windows8 rickman <gnuarm@gmail.com> - 2012-11-15 13:55 -0500
Re: Windows8 RR <freedomspyder@gmail.com> - 2012-11-15 16:03 -0800
Re: Windows8 rickman <gnuarm@gmail.com> - 2012-11-15 21:54 -0500
Re: Windows8 RR <freedomspyder@gmail.com> - 2012-11-15 19:26 -0800
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-15 19:27 -0800
Re: Windows8 Bernd Paysan <bernd.paysan@gmx.de> - 2012-11-16 17:45 +0100
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-16 09:10 -0800
Re: Windows8 Bernd Paysan <bernd.paysan@gmx.de> - 2012-11-16 22:34 +0100
Re: Windows8 Andy Valencia <vandys@vsta.org> - 2012-11-16 18:06 +0000
Re: Windows8 Paul Rubin <no.email@nospam.invalid> - 2012-11-16 11:09 -0800
Re: Windows8 Spam@ControlQ.com - 2012-11-16 15:18 -0500
Re: Windows8 visualforth@rocketmail.com - 2012-11-15 00:19 -0800
Re: Windows8 "Elizabeth D. Rather" <erather@forth.com> - 2012-11-14 22:55 -1000
Re: Windows8 albert@spenarnc.xs4all.nl (Albert van der Horst) - 2012-11-15 12:20 +0000
Re: Windows8 visualforth@rocketmail.com - 2012-11-15 08:32 -0800
Re: Windows8 kenney@cix.compulink.co.uk - 2012-11-16 04:51 -0600
Re: Windows8 stephenXXX@mpeforth.com (Stephen Pelc) - 2012-11-16 13:46 +0000
Re: Windows8 visualforth@rocketmail.com - 2012-11-16 08:12 -0800
Re: Windows8 the_gavino_himself <visphatesjava@gmail.com> - 2012-11-29 00:16 -0800
csiph-web