in

NVIDIA: “La Ley de Moore está muerta”

Como todos sabemos, la relación entre Intel y Nvidia está muy lejos de ser la mejor. Han tenido encuentros muy duros en el pasado, y como consecuencia es imposible ver a un procesador Intel funcionando en un chipset Nvidia. Sin embargo, las diferencias no terminan allí. Mientras que Intel defiende su modelo de procesadores basados en la arquitectura x86, colocando más núcleos en paralelo por procesador, en Nvidia están convencidos de que ese modelo de desarrollo de hardware es completamente obsoleto, y que ya no aporta beneficio alguno. Para ellos, la respuesta reside en utilizar cientos de núcleos a través de un eficiente procesamiento paralelo, algo que su sistema CUDA de GPGPU puede proveer.

Veamos: La Ley de Moore indica que la densidad de transistores en un chip se duplica cada dieciocho meses. Con algunas idas y venidas, esta ley se ha cumplido en el contexto general. Hace diez años, la vanguardia estaba marcada por procesadores de entre 500 y 600 megahertz de velocidad. Hoy en día es posible encontrar chips con una velocidad de reloj de 2700 megahertz aún en las unidades más económicas. Como si eso fuera poco, la carrera de los megahertz dejó de tener sentido, y ahora el mejor procesador es el que más rendimiento ofrece en aplicaciones de hilos simples y múltiples. En otras palabras, la Ley de Moore no se ha vuelto algo inútil, sino que ha perdido parte de su efecto original. Hasta el hardware más sencillo ha tenido un desarrollo considerable, pero el aumento en la cantidad de transistores y núcleos entrega un aumento de velocidad cada vez menor. Algunos creen que este método de fabricación de procesadores ha llegado a un límite evolutivo imposible de sortear, y entre ellos encontramos a Nvidia.

La situación entre Nvidia e Intel es delicada, y por esta razón no se han ahorrado palabras al declarar "muerta" a la Ley de Moore. Pero esta declaración no llega por una simple cuestión de rechazo. El vicepresidente y jefe científico de Nvidia, Bill Dally, habla con fundamentos más que lógicos. Si bien la velocidad de reloj ha aumentado de acuerdo a los parámetros de la Ley de Moore, cualquier beneficio otorgado por el proceso de "escalabilidad" en materia de rendimiento puro está acabado. De acuerdo a Dally, es de una necesidad crítica construir nuevos ordenadores paralelos que sean energéticamente eficientes, y no concentrados en un aumento en serie de la velocidad. La ventaja de un sistema paralelo es que una duplicación efectiva de la cantidad de transistores se convierte en una duplicación del rendimiento. En cambio, duplicar la cantidad de transistores en un procesador convencional entrega un aumento modesto en el rendimiento, a costa de un terrible consumo de energía, haciéndolo altamente ineficiente.

Si bien Dally tiene algo de razón, lo cierto es que no termina de reflejar del todo la realidad de la informática. En primer lugar, las declaraciones provienen del vicepresidente de la empresa dueña del sistema de procesamiento paralelo mejor conocido, que es CUDA. Y en segundo lugar, no menciona en ningún punto al software. Hoy en día, soy muy pocas las aplicaciones que pueden aprovechar al máximo a un sistema que posea más de tres o cuatro núcleos. Tanto Intel como AMD se han visto forzados a implementar sistemas de aceleración en sus procesadores cuando ejecutan aplicaciones de un solo hilo, porque de una forma u otra, el software no está a la altura de las circunstancias. Y una teórica adopción del procesamiento paralelo implica abandonar a la arquitectura x86, algo que muchos desarrolladores no están dispuestos a hacer. La idea de Nvidia es buena, pero se necesitará mucho más que el CUDA y la declaración de su vicepresidente, para forzar un cambio en la forma en la que se crea el hardware hoy.

Reportar

¿Qué te pareció?

Escrito por Lisandro Pardo

19 Comments

Leave a Reply
  1. pues si, mientras el software, no este OPTIMIZADO, asi le pongan 100 nucleos, simplemente, su rendimiento, no va a mejorar de manera significativa, ya que el proceso, se realizaro solo por un nucleo, y los demas, quedan desperdiciados.
    en el momento, en el que tanto software, como hardware, trabajen al UNISNO, y en mulñtiples nucleos, entonces SI, veremos una escala enorme en el desempeño de nuestros "juguetes", pero para eso, aun faltan varias cosas por "pulir", como los direccioanmientos adecuados de la memoria ram, para asignarle sectores especificos, a nucleos especificos, entre otros problemas a superar

  2. La aparición de esta tecnología de multiples nucleos, es antigua, pues aunque no esten uno dentro de otro, a existian en los pentium , placas madres con 2 procesadores (separados) trabajando junto, y no dió muy buenos resultados, da igual que el software aproveche esto o no. aún conservo un Pentium II a 450 Mhz, y con 192 MB Ram, funcionando con el Xp y viendo peliculas Divx, etc sin problemas, sin embargo el otro día leo en una revista dedicada a la informatica y de mucha popularidad, que ofrecian un ordenador intel atom 1.6 Ghz con tecnología HT (segunda unidad lógica emulada) y 1 GB Ram y explicaban que para reproducir videos multimedia iva ajustado (ya me diran en que) no se referian a alta definición.

    Que no, que la tecnología x86 no es obsoleta, es que la hacen obsoleta con los adelantos tecnológicos, en vez de profundizar más, sacan cosas nuevas y no desarrollan lo suficiente para lo anterior, es como el windows 7 y vista con la cantidad de recursos que come el GUI aereo, sin embargo en XP añadiendo unas cuantas dll, se consigue el mismo efecto sin gran consumo de recursos (me lo expliquen).

    Esto es que los ingenieros no saben como aprovechar, solo saben crear, y eso de aprovechar nos toca a los desarrolladores .

    • Oye tienes razón en parte con lo de win xp hay muchos programas que lo maquillan y queda muy parecido a win7 o vista y la cantidad de recursos que se come no superan unos cuantos megas de ram… pero si quiero escritorios bonitos me sigo quedando con Ubuntu

      El problema de hoy en día es que el Hardware va creciendo unas 5 veces más rápido que lo que crece el desarrollo del Software

  3. Y claro, abandonar hoy en día x86 sería una locura, más para Windows, si casi todos los equipos con Windows no aprovechan las capacidades x64 de su micro (aunque se instalen ediciones de 32 bits, no hay casi aplicaciones de 64, hay que emular las de 32 con la consiguiente pérdida de rendimiento).

    En GNU/Linux/Unix es otro tema, pero no viene al caso.

    Cambiar x86-x86/64 por otra arquitectura sería revolucionario, tarde o temprano se dará pero creo que faltan muchos años, y si los fabricantes de Soft no están a la altura, sería inútil.

  4. "De acuerdo a Dally, es de una necesidad crítica construir nuevos ordenadores paralelos que sean energéticamente eficientes, y no concentrados en un aumento en serie de la velocidad"

    alguien digale que su "mas grande orgullo" la gtx480 consume tanto como una HD5970(que son 2 targetas en 1) y se calienta aun mas…donde esta la eficiencia energetica de la que habla?

    • pues una de estas tarjetas consume y se calienta lo mismo que la mia, una 275gtx de generación anterior y la 480 es muchas veces mas rapida

      en cuanto al software creo que si se necesita mejorar sea cual sea la arquitectura utilizada, por ejemplo un programa de decodificación de video con Cuda es unas 10 veces mas rapido que con un cpu
      por lo menos con mi rig actual asi es, pentiumD y gtx275, ahora comparar esto con un i7 nose que tal sera

  5. bueno tienen razon a medias seria bueno cambiar el x86 a largo plazo, por un standar mejor y mas enfocado al paralelismo y que sea mas eficiente energeticamente,ya se han visto procesadores de otras compañias que doblan la potencia de un i7 y con un consumo algo menor pero como mencinan es algo raro viniendo de una compañia cuyo orgullo es la gtx480.

  6. Por ahora son muy pocas las aplicaciones que usan mas de un nucleo, los unico que conozco que usan cuanto nucleo se les aparezca son los engine de ajedrez, programas como rybka y chessmaster se beneficiarian de la utilizacion de cientos de nucleos.

    • un Chessmaster que te gane en menos tiempo, Genial.
      Y Vamos que poco a poco las aplicaciones se están pasando a los 64 bits y a multinúcleo, como National Instruments que siempre tuvo soporte multithreading, y adobe ya empezó a sacar programas en 64 bits.

      Amigos, Compadres de Neoteo, me preguntaba si podrian sacar un tutorial de programacion de gpu’s, que me parece que Nvidia saco abrió su código o algo así para que programes en sus gpu’s y aumentar el rendimiento.

  7. Bueno por lo pronto ya hallaron la forma de asignar mas nucleos por programas o lo que se quieran pero recien, una universidad norteamericana lo ha hallado y es que el problema era la memoria y la asignacion de esta entre los nucleos que hacian ineficientes los modelos como para aprovecharlos como se debería y lo que hicieron fue asignar a un solo nucleo toda la tarea de la memoria del sistema y los demas nucleos propiamente dicho a procesar la informacion sin estar recurriendo a la memoria a cada rato….lo vi en toms hardware hace como 2 meses….era sobre la plataforma intel que lo hicieron…

  8. En mi opinión el principal problema con la tecnología de computadores actual, es que tiene que conservar la compatibilidad con hardware y software del pasado. Hasta los más potentes procesadores tiene muy oculto un corazón de 286 al que poco a poco se le han añadido capas y capas de nuevos circuitos. Lo mismo pasa con el S.O.
    Diseñar desde cero un procesador y un S.O. seria muy arriesgado desde el punto de vista de comercialización.
    Hasta donde sé, Apple es de las pocas compañías que se ha dado ese lujo, y conservar a sus sumisos seguidores.

  9. schaum de echo es el problema principal (bueno por lo qur he leido)de esto, si quieren cambiar de stantar el siguiente cpu tendria que ser compatible con lo viejos programas para aminorar el impacto, bueno deberian diseñar el siguiente standar con bastante potencia y cierta compatibilidad para poder simular un procesador x86 ,bueno regresando al problema de los multihilo amd pretende por lo que he leio despues de su renovacion de cpu creo que es buldozer, en su segunda revicion es integrar un Hyperthreading inverso o para que no sepa enfocar varios nucleos en 1 hilo.

  10. Me sorprende un poco por parte de AMD, no ha unificado la CPU en el GPU, lo más que llega es unir los dos chips en una oblea (FUSION) igual que intel con los i5 e i3; por parte de nvidia que todavía necesita un procesador para funcionar y no tiene patentes ni desarrollos en las instrucciones x86 (como puede ser SSE, SSEII o 3DNow o x64).

    Lo más sensato que podría hacer es crear una gpu con instrucciones x86/x64 y desplazar definitivamente a esos obsoletos microprocesadores, eso daría un salto emocionante hasta que se alcance de nuevo la barrera física y se de el salto a los ordenadores cuánticos.

  11. si se dejaran de jotadas y no se peliaran todo iria mejor, parecen paises en guerra xD…
    y de echo yo utiliso windows x64, y hay que estar corriendo todo el tiempo programas x86, perdidas de rendimiento… naaah, con 4gb de ram y un core 2 quad ni se nota xD

  12. @TK_C La verdad, no sabia que eran pocas las aplicaciones que usan mas de un nucleo. En ese caso me parece un desperdicio del procesador. Osea que mi pentium 4 de 3 ghz podria ejecutar programas mas rapido que un core 2 quad de 2,7 ghz ya que este ultimo usa generalmente solo 1 nucleo? Interesante…
    Siempre me he preguntado ¿para que invertir tanto dinero en nuevos procesadores con cada vez mas nucleos y mas "poderosos", si al final le instalas un sistema operativo que cada vez es mas pesado y consume mas recursos con lo que el computador queda igual de rapido y haces las mismas cosas? la verdad yo no noto la diferencia de "Velocidad" (o fluidez) entre un pentium 4 de 3 ghz y solo 512 mb de ram corriendo xp y un core 2 duo corriendo windows 7 con 4 ghz de memoria…

  13. Mmm pienso que actualmente grado de funcionalidad de la idea de Intel de poner múltiples procesadores no esta funcionando a todo de lo que debería, el hardware se tiene que contimuamente se va mejorando y soportando una mayor capacidad pero pienso que uno de los principales problemas es quien va distribuir, consumir, manejar esa capacidad de procesamiento, claro que debe de tener un sistema operativo que aproveche todo lo que ofrecen los múltiples procesadores, ahora el procesamiento paralelo suena como la innovación de transición para obtener un mejor funcionamiento en el manejo de la tareas dentro de algún sistema operativo.
    Aunque el principal problema que YO VEO, es el que aun no se ha emigrado de tecnología, principalemente no se han obtenido resultados para tener una mayor velocidad ya que, aunque tengamos un super multiprocesador en serie, una buena cantidad en almacenaje la velocidad de transferencia va a ser la misma, aunque también en parte PIENSO que depende como e sistema operativo maneja su sistema de archivos para la extracción de algún archivo, es lo que provoca un cuello de botella, es lo que pienso YO.
    ./

  14. En conclusión los ingenieros electrónicos han hecho su tarea, son los de software los que son un desastre y no tienen creatividad ni explotan la verdadera potencia del hardware. Microsoft sus programas con cada versión solo demuestran que son una basura.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

CityOne: El simulador de ciudades de IBM

HP Slate con Windows 7: ¡Cancelada!