On Wednesday, 16 April 2014 at 22:11:23 UTC, froglegs wrote:

I am really looking forward to .NET Native becoming widespread.

Then this type of comparisons (C# vs C++) will be quite different.


I don't think it will make a major difference. Taking a GC based language and giving it a native compiler doesn't automatically make it performance competitive with C++(see Haskel and D(without dumping GC) on anything besides micro bench marks).

C# is still GC based, still makes heavy use of indirection(See Herb Sutters recent talk on arrays).


Also possible in C# with structs, interop annotations and unsafe blocks.

Don't forget that Herb Sutters also has a C++ agenda to sell.


C++ exposes SSE/AVX intrinsics, C# does not.

That is not correct.

1 - Nowhere in the ANSI/ISO C++ are SSE/AVX intrinsics defined, those are compiler extensions. So equal foot with the C# EMCA standard;

2 - .NET Native makes use of Visual C++'s backend with all the automatic vectorization and other code generation optimizations Visual C++ developers enjoy;

3 - .NET Native and RyuJIT have official support for SIMD instructions, GPGPU support is also planned

--
Paulo

Reply via email to