Polls

Afectará la crisis a los videojuegos?
 
Inicio arrow Noticias arrow Programacion arrow La importancia de llevar las cosas al extremo
La importancia de llevar las cosas al extremo PDF Print E-mail
Written by Javier Loureiro   
Wednesday, 23 April 2008

Estaba leyendo un libro de intel sobre optimización, sobre cómo optimizar los procesos aprovechando el multicore. Y se plantea una pregunta:

"cuál es la mejor forma de paralelizar un compresor de gzip? podemos hacer que cada thread comprima una parte del fichero, o que cada thread abra un fichero?"

 Dicho así, no me parece sencillo de responder de forma obia. Una forma de sacar una conclusión es llevar el tema al extremo. Pensemos, por ejemplo, qué pasaría si tenemos 5000 threads? La segunda opción se vuelve un poco más complicada, porque nuestro programa intentaria abrir instantáneamente 5000 ficheros, y el sistema operativo sufriría un fuerte golpe en rendimiento.

   Esto me hace pensar en la metodología de llevar al extremo las cosas. Sobre todo, porque en el mundo de la animación, haciendo una película, normalmente el extremo es lo normal. Tenemos millones de polígonos, millones de rayos, millones de texturas, millones de pelos, millones de ficheros, etc. Si existe algun cuello de botella, o si existe algun punto abierto a desbordarse, probablemente lleguemos a encontrarlo pronto. Suele ser cuestión de tiempo que lleguemos al extremo de las cosas.

 En la empresa,  este suele ser una buena receta para el desastre. Muchas veces el chavalín de turno se curra un script que, en laboratorio, y con medidas controladas, funciona correctamente, pero cuando "entra en producción", puede crear muchos problemas. Producción es el ejemplo de llevar todo al extremo. 

   Por cierto, otro sitio donde encontré este mismo razonamiento fue el último libro de Alan Greenspan, hablando sobre economía. Él lo utiliza para saber si una reforma o una nueva regulación puede ser bueno. Reducir los impuestos es bueno? preguntémonos qué pasa sin impuestos. Reducir la regulación es bueno? preguntémonos qué pasa sin regulación... y este tipo de pensamientos nos ayudará a razonar mejor y sacar conclusiones más claras.

 

Comentarios
Añadir nuevoBuscar
- David Miraut - La virtud está en el punto med     | 193.147.61.xxx | 2008-04-23 14:23:22
Estamos viviendo una época de grandes cambios tecnológicos que hacen que los modelos tradicionales con los que vivíamos hace unos años hayan acabado por alcanzar "sus extremos" debido a la rápida evolución.

Me parece que es bueno plantearse qué ocurriría si llevamos las cosas a sus límites, porque nos puede ayudar a ver más allá, sin embargo prefiero pensar que la virtud está en el equilibrio, un equilibrio que se mueve muy deprisa.

En arquitectura de computadores (que es lo que me pilla más cerca) estamos en medio de una transición muy fuerte, donde la solución está claramente en el paralelismo, pero ¿a dónde nos lleva?

La semana pasada estuvimos viendo en la URJC una charla grabada de Dave Patterson que explora estos temas, su problemática y posibles soluciones desde el punto de vista de los investigadores de Berkeley, en prototipos de procesadores con miles de núcleos. Este viernes probablemente veremos una charla de Jack Dongarra, que ha trabajado sobre la problemática de la programación eficiente de máquinas con un cuarto de millón de procesadores.

Las tarjetas gráficas que salen en Junio pasarán de los 200 procesadores.

Con este ejemplo quiero decir que lo que hoy nos parece "extremo" puede que no lo sea tanto en unos años, y que el planteárnoslo no es tan descabellado como pueda parecer en un principio. Aunque hay que conocer bien el problema para poder extrapolarlo, y a veces eso sólo está al alcance de puñado de gurús, creo que el ejercicio es muy sano y puede ayudarnos a tener una mejor perspectiva :-)
Rubén Penalva     | 195.219.143.xxx | 2008-04-23 15:22:35
¿Cual es el libro de intel del que hablas?

Cita:
el último libro de Alan Greenspan

Mas de uno con hipotecas te mirara mal por leer este libro..... :P
derethor   | Super Administrator | 2008-04-23 19:44:07
los que están hipotecados no sé, lo que ahorran estarán más que satisfechos.

el libro es "The software Optimization Cookbook"
- Gabriel - Esto es medio filosofia..   | 62.57.34.xxx | 2008-04-25 00:16:47
.. y no estoy de acuerdo con el desarrollo de esta "teoria de los extremos".

Lo que si que estoy de acuerdo es con las matematicas, y es que no todas las funciones son lineales (directamente proporcionales, para los amigos), por lo que si se desarrollara una funcion teorica sobre el rendimento para el problema de la compresion de archivos con multiples procesadores, seguramente se encontraria un punto optimo que distaria del extremo.

Y como esto que propongo es posible o por lo menos es seguro que entontraríamos un problema en el que fuera aplicable, se concluye que esa teoría de los extremos no puede ser cierta.

Otra cosa es una funcion logica tipo: bueno o malo. Por webos que la solucion es un extremo (ejemplo del libro sobre economia).
- Antonio Suazo - Concuerdo con los extremos   | 200.86.77.xxx | 2008-05-17 21:21:24
Javier Loureiro, creo que ese es precisamente el norte a seguir. Muchos son los casos en que un investigador realmente avanza producto de 'llevas las cosas al extremo'. El mismo Edison, siendo un poco sordo, no quedó conforme con la primera versión de su gramófono, y ajustes mediante, logró el sonido fuerte y claro. Es un tipo de razonamiento, que sin duda aplica nó sólo a la resolución de problemas.

Y no comparto el punto de vista de gabriel, pues está claro que el fin último de 'extremar las cosas' no es el resultado en sí, sino el poder visualizar más claramente las variables a considerar en una determinada situación.
Escribir comentario
Nombre:
Email:
 
Website:
Título:
Código UBB:
[b] [i] [u] [url] [quote] [code] [img] 
 
Security Image
Por favor introduce el código anti-spam que puedes leer en la imagen.

Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved.



menéameDigg!Del.icio.us!Google!Technorati!Yahoo!
Last Updated ( Wednesday, 23 April 2008 )
 
< Prev   Next >

Lista de Correo

visita la lista de correo de codepixel. Es una lista abierta, asi que podrás subscribirte y preguntar tus dudas de programación, compartir tus opiniones, aportar ideas, y formar parte de la comunidad codepixelera.