Definitivamente dejo C++

Hace un par de días comenté unas pequeñas pruebas que había hecho con C# y C++, para comprobar cuanto potencia perdía si decidía huir vilmente de mis programas en C++ para refugiarme en Mono. Los resultados eran más esperanzadores de lo que yo suponía en un principio pues con C# y Mono conseguí un 75 por ciento de la velocidad del mejor caso obtenido con C++. Incluso mejoraba la situación que yo tengo actualmente, con código C++ sin optimizar.

Mi amigo Fabian se interesó en las pruebas de velocidad y le ha dado un par de vueltas más que yo. Sus resultados son mucho más impresionantes que los míos. Yo no tengo ninguna .Net 1.0 y ni la nueva .Net 2.0 Beta1, así que no lo he probado en windows. Sus pruebas sí que han sido sobre una máquina con windows y linux instalado. Las comparaciones son odiosas (resultados conseguidos en la misma máquina, un celeron 2800):

S.O. Lenguaje y opción Bytes procesados Fotogramas
Windows C++ con -O0 14MBps 61fps Windows C++ con -O3 28.9MBps 125fps Windows C# con .Net 2.0 Beta1 28.8MBps 125fps Windows C# .Net 2.0 Beta1 y código unsafe 30MBps 130fps Linux C++ con -O0 15MBps 66fps Linux C++ con -O3 25.7MBps 112fps Linux C# con Mono 16MBps 70fps Linux C# con optimizaciones en mono 20.5MBps 89fps

Impresionantemente .Net 2.0 Beta1 va más rápido que nuestro querido gcc, tanto en windows como en linux. En windows el motivo es sencillo, el cygwin, pero en linux la cosa es un poco más peliaguda. Definitivamente dejo C++.

Gracias a Fabian por su ayuda y su windows.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>