jueves, mayo 18, 2006
Cuidado con lo que miden las comparativas de velocidad
Hace no mucho leía esta comparativa de velocidad del uso del software estádistico R en Linux, Windows y MacOS X. En esta comparativa salía bastante mal parado MacOS X, siendo un software que fundameltalmente lo que hacía era tirar de CPU, y se ejecutaba sobre la misma máquina, no se entendía la falta de velocidad de MacOS X. Bien, pues la explicación está en este otro artíuclo. La clave es, cuando la implementación de malloc() de MacOS X pasa a usar mmap() en vez del heap de la aplicación (brk() o sbrk()). MacOS X cambia antes al uso de mmap, y por tanto llama mucho más al sistema con el uso de malloc y free. Además por el uso un poco extraño de la memoria de R, este efecto se multiplicaba. Al final, lo que se está haciendo es un micro benchmark de malloc() y free() ... y R no utiliza ninguna de las rutinas de las librerias por defecto ni en Windows ni en Linux. Un simple cambio en MacOS X, recompile y la velocidad es similar. Moraleja: cuidado con lo que medimos y como lo medimos.
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario