Zitat von
Elvis:
Gaaanz vorsichtig wenn man sich so weit aus dem Fenster lehnt.
IMHO ist es nicht möglich das Gleiche in .Net schneller hinzukriegen als in native Code. (Schneller zur Laufzeit).
Der JIT optimiert zur Zeit, verglichen zu C/C++ compilern oder denen von Delphi/FreePascal fast gar nix(außer vllt
massives inlining).
Du hast aber sehr schnell in .Net Code, der a) extrem wiederverwendbar ist und b) schnell genug ist, dass du in native Code ziemlich tricksen musst um mitzuhalten.
Stichworte wären hier dynamic
IL oder einfach Reflection.Emit. Wer auf dem letzten Stammtisch in M gewesen ist hat eine klitzekleine Kostprobe gesehen, was man damit zaubern kann und wie sowas Vieles unglaublich vereinfacht.
Das war auf bereits existierende Anwendungen bezogen. Wenn du schon eine Anwendung hast, diese 2 - 3 Jahre liegen lässt (und nicht an SSE3 etc. anpasst), dann wird dich irgendwann der 2 - 3 Jahre lang nicht gepflegte .NET-Code von der Geschwindigkeit einholen, weil eben der JIT vom Framework weiter optimiert wurde.
Dass eine von Hand optimierte native
WIN32-Anwendung von der Geschwindigkeit besser abschneidet als eine .NET Binary, das will ich gar nicht bezweifeln