C# holt im VLC-Filter zu C auf: Nur 8 Prozent Rückstand beim Gaussian Blur

C vs. C#: racing VLC's Gaussian blur

C# holt im VLC-Filter zu C auf: Nur 8 Prozent Rückstand beim Gaussian Blur

Martin Finkel hat VLCs Gaussian-Blur-Filter Zeile für Zeile von C nach C# portiert und beide Versionen im selben VLC auf identischen Frames gegeneinander antreten lassen. Der erste Port war rund 23 Prozent langsamer, vor allem wegen RyuJITs Codegenerierung. Zwei kleine Anpassungen brachten ihn auf 8 Prozent heran, und mit SIMD-Optimierungen erreichen beide über 230 Frames pro Sekunde – rund 30-mal mehr als der aktuelle VLC-Code.

Teil dieser Arbeit bestand darin, C# so umzuschreiben, dass .NET das erzeugt, was clang von sich aus erzeugt. Das sind die eigentlichen Kosten, wenn man sich hier für C# entscheidet: zu wissen, was der Compiler mit den eigenen Schleifen macht.

Mehr von diesem Tag

2026-10-24