Felipe por dos

Dos momentos de Felu de este Diciembre 2010, que por un lado muestran lo grande que está, y por otro que los genes están ahí, :p.

Felu leyendo

Hagan click en la foto para ver el video!

Comentarios Imprimir

Pelis! Pelis?

IMDB suckea. Mal. No solo porque se autolimita a un formato de pantalla absurdamente angosto, sino porque me muestra todos los títulos en castellano! Y es una mierda, yo los quiero en "original", dependiendo de donde sea la peli.

Pero estuve buscando alternativas, y no encontré. El que pintaba más o menos era Yahoo! Movies, pero puse buscar y le tiré el string "resident evil after life", ¡y no encontró nada! Che, vos, Yahoo, ¿decís que hacés buscadores? Triste...

¿Alguien conoce un sitio que muestre buena info sobre películas pero que no esté empedorrándose?

Anyway... las que vi en el último período:

  • Babylon A.D.: -0. Algunos destellos interesantes, pero no pasa de ser una de acción semipedorra.

  • Blindness: +1. Muy interesante la peli en función de cómo trata las relaciones que se arman en tal peculiar situación.

  • Body of lies: +1. Me gustan este tipo de pelis donde, más allá que es una de espías e intrigas, muestran otras culturas desde adentro.

  • Diario de una ninfómana: +0. Bien tratado el tema del querer ser lo que uno es, pero siempre metido en una sociedad que quiere "normales".

  • Sex and death 101: +0. Interesante historia, buenas actuaciones, divertida.

  • Sex drive: +0. Porky's, 2010. Para reirte un rato... es más, me reí más de lo que pensé al principio que me iba a reir...

  • Slipstream: -1. No le encontré sentido ni luego de una hora de verla. Una de las pocas películas que abandoné antes de llegar al final.

  • The brothers Bloom: +1. Maravillosa historia, con impecables actuaciones.

  • The other Boleyn girl: +0. Muy bien filmada, muy bien contada, una peli interesante.

  • The strangers: -0. Típica película de terror donde, por ejemplo, los malos hacen cosas para asustar al espectador en lugar de hacer cosas que tengan sentido en la película.

  • X-Men origins: Wolverine: +0. Mirar sólo si te gusta la saga de X-Men, y sabés que vas a ver un comic, no una peli "de verdad".

Nuevas:

Finalmente, el resumen según cuando las anoté:

(26-Jan-2007)    1
(26-Mar-2007)    2
(15-Jun-2007)    2
(19-Nov-2007)   12    3
(23-May-2008)   24   21    4    4
(24-Sep-2008)   34   31   29   21   15
(21-Ene-2009)   19   19   19   18   18
(09-May-2009)   17   16   14   14   13
(15-Oct-2009)        21   20   17   17
(01-Mar-2010)             19   18   18
(12-Sep-2010)                  19   19
(14-Dic-2010)                       13
Total:         111  111  105  111  113
Comentarios Imprimir

Honrar la vida

Estaba charlando con un amigo para ver cuando nos juntábamos a tomar una cerveza, y en cómo nos llevó el diálogo porque un amigo de él se va a Alemania, quizás para no volver, se despacha con un:

para que te después de años de laburar muy duro, venga un cabeza y te meta un tiro en el ojo. Yo no volvería, esto se hunde y no hay remedio, la gente que vale la pena no se mete en política; así que las cosas no van a cambiar; todos lo sabemos

Le contesté que creía que vamos a estar mejor, pero que todo el planeta se va al caño. Que en todos lados se está igual o parecido, sólo que uno de afuera no lo ve tanto.

Puse como ejemplos de esto que en Alemania está lleno de nazis [-], que te vas a España y la ETA te vuela en pedazos [-] , que mire los quilombos que se armaron hace poco en Francia [-], o hace una semana, en Londres [-] (los links los busqué después, no se pierdan el último).

El tema es donde te parás para construir el futuro. Tu futuro, el de tu familia, el de tus hijos, el del resto de la gente, y cuanto te llena eso como hombre, como persona. Sí, vas a estar más seguro abajo de la cama, pero no escala.

Eso de durar y transcurrir No nos da derecho a presumir Por que no es lo mismo que vivir Honrar la vida (pedacito de "Honrar la vida" de Eladia Blazquez)

En algún momento hay que empezar a hacer valer que uno está vivo.

Comentarios Imprimir

El mar de Las Toninas

Foto de fines del verano pasado, el clima no daba para meterse al agua, pero al mar no se lo disfruta solamente desde adentro :)

Mar de Las Toninas

Me encantan no sólo los colores de la foto, sino al mar rodeando los bastoncitos de madera que puso algún humano para frenar la fuerza del agua... la cual inevitablemente, tarde o temprano, vencerá.

Comentarios Imprimir

Muchas lecturas aleatorias y secuenciales, ¿mmap?

Con Guillo y Alecu empezamos a charlar sobre si, en un módulo que estaba haciendo Guillo para el laburo convenía usar mmap al tener muchas lecturas secuenciales y muchas lecturas aletorias sobre un archivo grande. Obviamente, usando Python (¿faltaba aclararlo?).

Como no nos decidíamos, decidí medirlo.

Medimos!

Creé un archivo de cien millones de bytes al azar, y probé con distintos scripts hechos en el momento, con un comportamiento parecido al que iba a hacer Guillo:

  • Una lectura secuencial de todo el archivo, de a dos tamaños diferentes. En el script leo 50 bytes, y luego 450 bytes, y así; en la realidad se haría una lectura de ~50 bytes, longitud fija, y luego una de ~450, longitud variable.

  • Doscientas mil lecturas al azar en todo el archivo, siempre de 450 bytes. En la realidad, se harían muchas lecturas, de un valor no fijo pero precalculado.

En ambos casos, las pruebas que realicé fueron haciendo .read() y .seek() sobre archivos normales, haciendo .read() y .seek() sobre el mmap, y usando el mmap como un string, accediendo por slices.

Resultados

Entonces, lectura secuencial, leyendo los cien megabytes de principio a fin (en milisegundos):

- .read() y seek() sobre el file: 501 mseg
- .read() y seek() sobre el mmap: 492 mseg
- usando slices sobre el mmap:    169 mseg

Es notable la diferencia.

Hay que tener en cuenta que los primeros dos hacen dos llamadas a función por cada vuelta del loop (vean los archivos para más detalle), lo que suma 400 mil function calls en total. Yo había medido antes el costo de una llamada a función, y eran de un poco menos de 250 nanogundos: no parece mucho, pero en 400 mil llamadas, suman 100 milisegundos, lo que explica un poco la diferencia en lo medido.

En la lectura secuencial, tiempo total desde que se tiene la posición a leer hasta que se obtiene el string (en microsegundos):

- .read() y seek() sobre el file: 18.1 useg
- .read() y seek() sobre el mmap: 10.8 useg
- usando slices sobre el mmap:    10.3 useg

Conclusiones

Si vamos a usar mmap, en estos casos, conviene usar el acceso por slices (con corchetes).

Tomando esos tiempos, mmap es un 296% más rápido en la lectura secuencial, y un 75% más rápido en el acceso aleatorio.

Claramente mmap es el ganador.

Disclaimers

Uno: Esto lo hice usando Python 2.6.6 en un Linux.

Dos: Mi disco es un SSD, seguramente en un disco con platos magnéticos la diferencia entre acceso secuencial y acceso aleatorio sea mayor.

Tres: Inmediatamente antes de hacer cada prueba, hay que decirle al sistema operativo que descarte los caches del filesystem, para que esto no nos deforme las medidas. Eso lo hice con este script.

Comentarios Imprimir