Walter's DConf 2014 Talks - Topics in Finance
Paulo Pinto
pjmlp at progtools.org
Sun Mar 23 01:03:09 PDT 2014
Am 23.03.2014 08:13, schrieb Russel Winder:
> On Sat, 2014-03-22 at 21:13 +0000, deadalnix wrote:
> […]
>> HFT is very latency sensitive. D stop the world GC is a no go.
>>
>> D needs a better GC to be viable in these markets.
>
> GC technology was well beyond "stop the world" in Common Lisp in the
> 1990s. Java learnt this lesson in the 2000s. IBM, Azul, and now OpenJDK
> have an array of very sophisticated, and indeed some real-time, garbage
> collectors. Clearly though the Lisp and Java worlds are very different
> from the C++, D and Go worlds, thus sophisticated algorithms cannot
> simply be transplanted.
>
> As I understand it, Go has a parallel mark and sweep algorithm which is
> relatively unsophisticated, and a bit "stop the world", but they claim
> fine for small heaps: generational and compacting collectors (as per
> Java) are only beneficial for large heaps is the claim (but I haven't
> seen much data to back this up for Go). There is rumour of a change, but
> this has been circulating for ages.
>
> I guess Herb Sutter's (reported) view that he can write C++ code with no
> new and so no need for garbage collection, if applied to D would mean
> that although the collector "stopped the world", the heap would need no
> work and be small. But for real time you would just have to remove the
> GC completely to have the needed guarantees.
>
Well, there is a nice quote from Bjarne as well:
"C++ is my favourite garbage collected language because it generates
so little garbage"
And yet C++11 got to have an optional GC API defined, so even the
ANSI/ISO folks do recognize its value in C++.
Visual C++ already supports it,
http://msdn.microsoft.com/en-us/library/vstudio/hh567368%28v=vs.120%29.aspx
--
Paulo
More information about the Digitalmars-d
mailing list