Me gustaría dar mi opinión con respecto a lo de usar un binding contra una
versión nativa.
El uso de bindings si implica una sobrecarga, que esta relacionada con la
copia y transformación de datos de por ejemplo Python a..., digamos C. Si
por ejemplo hablamos de una función sencilla que realmente no haga mucho, la
velocidad que se obtiene por ejecutarse en C seguramente se perderá por esa
sobrecarga, pero si hablamos en este caso de librerias gráficas, que son
algoritmos costosos, será mucho más beneficioso ejecutarlos en C, a pesar de
la pequeña sobrecarga comparada con la de hacer eso de manera nativa en un
lenguaje de alto nivel.

Como ejemplo, quiero hablar de un algoritmo que observé implementado este
semestre.  Implicaba una gran cantidad de cálculos y ciclos, y pude ver una
versión en C y otra en Python.  La versión en C, demoraba alrededor de 2
segundos en terminarse, mientras que la versión en Python tardaba alrededor
de 15 a 20 segundos.  Si se eligiera una implementación de esta función con
un binding, la sobrecarga del paso de datos no sería ni cercana a esa enorme
diferencia.

Ark
_______________________________________________
Lista de correo de Colibri 
Colibri@listas.el-directorio.org
http://listas.el-directorio.org/cgi-bin/mailman/listinfo/colibri

El Directorio, el sitio del Software Libre  en Colombia:
http://www.el-directorio.org

Responder a