Microsoft working on new systems language
Ola Fosheim Grøstad" <ola.fosheim.grostad+dlang at gmail.com>
Ola Fosheim Grøstad" <ola.fosheim.grostad+dlang at gmail.com>
Sun Dec 29 06:35:43 PST 2013
On Sunday, 29 December 2013 at 13:46:07 UTC, Dicebot wrote:
> This is not true. Assuming skilled use and same compiler
> backend those are equally performant. D lacks some low-level
> control C has (which is important for embedded) but it is not
> directly related to performance.
That low-level control also matters for performance, when you
have hard deadlines. E.g. when the GC kicks in, it not only hogs
all the threads that participate in GC, it also trash the caches
unless you have a GC implementation that bypasses the caches.
Sustained trashing of caches is bad.
C has low-level, low resource usage defaults. While you can do
the same in some other languages they tend to default to more
expensive use patterns. Like D defaults to stuff like GC and
thread-local-storage. Defaults affect library design, which in
turn affect performance. (thread local storage requires either an
extra indirection through a register or multiple kernel level
page tables per process)
More information about the Digitalmars-d
mailing list