Optimization ???
Mattdef
mattdef at gmail.com
Fri Feb 21 07:36:49 PST 2014
On Friday, 21 February 2014 at 13:39:08 UTC, Orvid King wrote:
> The single biggest reason that this is slower in D than in C# is
> because of the GC. By default with MS.Net, and Mono (when
> compiled
> with sgen) an allocation is almost literally just a
> bump-the-pointer,
> with an occasional scan (no compaction for this code) and
> collection
> of the 64kb (on MS.Net it actually the size of your CPU's L1
> cache)
> gen0 heap. This particular code is unlikely to trigger a
> collection of
> gen1 (L2 cache when on MS.Net), gen2 or the large object heap.
> In D
> however, the allocations are significantly more expensive.
>
> On 2/21/14, John Colvin <john.loughran.colvin at gmail.com> wrote:
>> On Friday, 21 February 2014 at 09:29:42 UTC, Mattdef wrote:
>>> Thanks for yours replies.
>>>
>>> I know it is the conversion of uint that is the problem but my
>>> C#
>>> code has the same conversion. So C# is better than D for
>>> string
>>> conversions ?
>>>
>>> (sorry for my english)
>>
>> It's quite possible that C# has faster string conversion in at
>> least some cases.
>>
>> In particular, making lots of small strings is very garbage
>> heavy
>> and the D garbage collector isn't as sophisticated as the one
>> in
>> C#
Thanks for yours answers !
More information about the Digitalmars-d-learn
mailing list