Guía de Tarjetas Gráficas 2010, lo que necesitas saber antes de comprar

18 Diciembre 2009 abrahamscitech 2 comentarios

Todo lo que querías saber sobre tarjetas de video y nunca te animaste a preguntar. Si te confunden todos esos términos como PCI-Express, DirectX, GDDR3,… está guía es para tí. En esta pequeña guía explicaré el funcionamiento y características básicas de una tarjeta de video, para esto la he dividido en las siguientes secciones:

  • Introducción
  • Características de Hardware
    • Interfaz
    • Alimentación y consumo de energía
    • Puertos de video
    • El chip de video o GPU
      • Bus y memoria de video
      • Aceleración 2D y 3D
      • Aceleración de códecs de video
    • Multi-GPUs
  • Características de Software
    • APIs
    • Drivers
    • Reproducción de video

Introducción

Una tarjeta de video es en si mismo una pequeña computadora, cuenta con sus propios medios para procesar, almacenar y transportar información. Casi toda la información que se manipula es de tipo gráfico pero existen excepciones como veremos un poco más adelante.

Cuando compramos una tarjeta de video es importante tener en mente el uso que le vamos a dar. Para la mayoría de los usuarios que no gustan de ver películas en la PC o jugar los títulos más nuevos de videojuegos, es suficiente con una tarjeta gráfica económica y sencilla. Los cinéfilos buscarán una tarjeta que pueda reproducir videos en alta definición, y  los videojugadores tal vez estén interesados en una poderosa y costosa tarjeta gráfica.

Características de Hardware

Interfaz

Todas las tarjetas de video se conectan físicamente al equipo mediante alguna ranura ya sea PCI, AGP, o PCI-Express, es importante revisar el tipo de ranura de video que soporta nuestra tarjeta madre (motherboard) pues no todas son compatibles entre sí, y si no tenemos cuidado podríamos terminar comprando una tarjeta que no funciona con nuestro equipo. Los tipos de ranuras son las siguientes:

Nombre Velocidad Fecha de aparición
PCI 133MB/s 1993
AGP 1x (1.0) 266MB/s 1997
AGP 2x (1.0) 533MB/s 1997
AGP 4x (2.0) 1066MB/s 2000
AGP 8x (3.0) 2133MB/s 2000
PCI-Express 8x (1.0) 2 GB/s 2004
PCI-Express 16x (1.0) 4 GB/s 2004
PCI-Express 8x (2.0) 4 GB/s 2007
PCI-Express 16x (2.0) 8 GB/s 2007
PCI-Express 8x (3.0) 8 GB/s 2010
PCI-Express 16x (3.0) 16 GB/s 2010

PCI-Express 16x

Hoy en día prácticamente todas las tarjetas de video nuevas son PCI-Express. Las tarjetas PCI, PCI-Expres y AGP no son compatibles entre sí, pero si son compatibles entre versiones diferentes, por ejemplo el PCI-Express 2.0 es compatible con el PCI-Express 1.0.

Alimentación y consumo de energía

El consumo de energía puede ser importante al pagar nuestro servició de energía eléctrica. Las fuentes de alimentación más comunes para PC son de 350-450 Watts pero para ciertas tarjetas de video podríamos requerir fuentes de 600 o hasta 1000W!!. Si la fuente no soporta el consumo es muy posible que se queme. Las tarjetas de mayor consumo generalmente requieren de conectores de alimentación especiales como los siguientes:

Como en todos los circuitos electrónicos, al aumentar el consumo de energía, también aumentará la temperatura y la disipación térmica, esto implica que requerirás un gabinete más grande y mejor ventilado. En algunos equipos la disipación térmica y el consumo energético son críticos, como es el caso de un HTPC que cuentan con fuentes de alimentación de muy poca capacidad 100-250W y los gabinetes son pequeños y pobremente ventilados.

Al comprar una tarjeta de video no solo es recomendable revisar el consumo máximo de energía (publicado por el fabricante), sino también el consumo de energía mientras la tarjeta no realiza tarea alguna, pues la mayor parte del tiempo tu tarjeta se encontrara en este estado. Por ejemplo, de acuerdo al sitio X-bit labs tenemos el consumo de energía de las siguientes tarjetas:

Consumo de energía en Watts

Aunque estas dos tarjetas tienen un desempeño muy parecido el consumo de energía varia considerablemente. Es posible apreciar como la 9600GT consume más de 20W incluso cuando no realiza tarea alguna, mientras que la GT240 ofrece un consumo de menos de 20W en el uso diario, excepto en videojuegos.

Es recomendable revisar sitios de Internet como X-bit labs que realizan reseñas detalladas sobre el consumo energético de las tarjetas de video que van apareciendo en el mercado.

Puertos de video

Existen varios puertos de video que permiten conectar la tarjeta gráfica al monitor o a la TV, eh aquí una lista de los más comunes:

VGA (1987)
DVI (1999)
s-video (1987)
s-video (1987)
HDMI (2002)
DisplayPort (2008)

Cuando se habla de puertos de video, lo más importante es el dispositivo que deseas conectar, por ejemplo si deseas conectar tu HDTV a la PC, deberías asegurarte que la tarjeta tenga el puerto HDMI. El puerto más común en los monitores actualmente es DVI. Si deseas conectar 2 o más monitores deberás asegurarte que tu tarjeta cuente con el soporte necesario para esto.

El chip de video o GPU

Todas las capacidades de nuestra tarjeta de video dependen de un pequeño chip llamado Unidad de Procesamiento Gráfico o GPU (por sus siglas en inglés). Algunos ejemplos son:

  • ATI Radeon HD5750
  • Nvidia Geforce GT250

Podemos ver que los nombres están compuestos por 3 datos: [Fabricante] [Familia] [Modelo]. Lo primero que debemos revisar al comprar una tarjeta de video es el GPU. Puedes encontrar información detallada sobre GPUs de ATI, Nvidia e Intel en las siguientes ligas (en inglés):

Comparison of AMD graphics processing units

Comparison of Nvidia graphics processing units

Intel GMA

Bus y Memoria de video

El tipo y cantidad de memoria es en la mayoría de los casos irrelevante al elegir una tarjeta de video. Por ejemplo, en algunos casos una tarjeta con 1GB de video puede ser mucho más lenta que una que tiene tan solo 256MB. Es necesario elegir primero el GPU y depués fijarnos en la memoria.

Los tipos de memoria que podemos encontrar en una tarjeta de video (y su fecha de aparición en el mercado) son los siguientes:

  • DDR2 (2003)
  • DDR3 (2007)
  • GDDR3 (2003)
  • GDDR4 (2007)
  • GDDR5 (2008)

La letra G, al principio de los últimos tres, se refiere a Graphics, y son tipos de memoria especialmente diseñados para tarjetas de video, los dos primeros son los tipos de memoria comerciales que ya conocemos.

Algunos GPUs soportan varios tipos de memoria de video. Por ejemplo el ATI Radeon HD4650 soporta tres tipos de memoria: GDDR2, GDDR3 y DDR2, con cada tipo de memoria obtendremos un desempeño diferente para este mismo chip.

Saber el desempeño de la memoria de video requiere conocer la combinación:

cantidad * tipo * velocidad * ancho de bus

Donde la velocidad se mide en Mhz y el ancho de bus puede ser de 64 a 512 bits (actualmente) dependiendo del GPU. Una memoria muy rápida podría estar limitada por el cuello de botella del bus de datos.

Aceleración 2D y 3D

La aceleración 2D, se refiere a la aceleración de los elementos en 2 dimensiones que usamos todos los días en nuestro escritorio, como botones, menús, ventanas y el ratón. La mayoría de las tarjetas de video nuevas y no tan nuevas cuentan con la aceleración 2D necesaria y se puede considerar como un factor de poca relevancia.

La aceleración 3D, se refiere a la aceleración de objetos tridimensionales que son utilizados principalmente en videojuegos. Si no eres un videojugador, este no debería ser un factor importante al decidir la compra de una nueva tarjeta. Por el contrario si te gusta jugar los títulos más nuevos de videojuegos, deberás saber que el precio, tamaño y consumo de energía de la tarjeta casi siempre van de la mano con la aceleración 3D.

Cada videojuego tiene una  demanda diferente de aceleración 3D y de memoria de video, los juegos más recientes son los más demandantes. En casi todos los juegos, es posible reducir la calidad gráfica para evitar que se congele o se vea muy lento. La mayoría de los juegos se pueden jugar perfectamente a más de 45 cuadros por segundo o fps (de sus siglas inglés), algunos juegos de estrategia se pueden jugar a 30 fps o menos, mientras que algunos de primera persona requieren 60fps. Veamos el siguiente ejemplo:

Juego: Crysis, Calidad Media, resolución: 1024×768

Tarjeta gráfica Cuadros por segundo (fps)
AMD Radeon HD4670 61
AMD Radeon HD4550 28
AMD Radeon HD4350 24

En esta pequeña comparación podemos ver como el mismo juego con la misma configuración gráfica se comporta de forma diferente en cada uno de los GPUs de la lista. Claramente con la configuración de video que se esta manejando, que es bastante baja, no es posible jugar Crysis en el Radeon HD4350, 24fps es muy lento para un juego de primera persona, pero si es posible jugarlo con el Radeon HD4670 que es un muy poco más costoso.

Es difícil saber como se comportará un juego con cierta tarjeta gráfica, la mejor opción es revisar primero las reseñas en Internet antes de adquirir cualquier cosa. Algunos sitios muy recomendables son los siguientes (en inglés):

Puedes encontrar más reseñas por cada modelo de GPU en GPUReview.

Aceleración de codecs de video

Los codec’s de video son métodos en hardware o software que permiten comprimir y descomprimir videos digitales; por ejemplo mpeg-1, mpeg-2, H.264, VC-1 etc. En la actualidad todos los videos que usamos día con día  se encuentran comprimidos en algún formato y para visualizarlos se requiere que el archivo pase por un proceso de descompresión. En muchos casos este proceso puede ser sumamente demandante y es realizado en varias etapas.

Las tarjetas gráficas nuevas cuenta con aceleración de codecs de video, que permite que algunas o todas las etapas de la descompresión de ciertos codecs sean procesadas por el GPU. Esto permite ver videos más fluidos y con mejor calidad de imagen, además de reducir el consumo de energía del equipo.

Solamente los GPUs más nuevos cuentan con aceleración completa de codecs de video. Las siguientes tecnologías permiten tener aceleración de codecs de video:

Tecnologías como PureVideo o Unified Video Decoder han ido evolucionando, cada nueva versión soporta más y mejor aceleración de codecs.

La aceleración de codecs de video debe ser un factor importante a tomar en cuenta si deseas reproducir películas Blue-Ray en la computadora, o cualquier otro formato de alta definición.

Multi-GPUs

Si deseas conectar cuatro monitores, jugar uno de los juegos con los gráficos más impresionantes en muy alta definición, o simular la colisión de dos galaxias,  posiblemente desees colocar 2 o más tarjetas de video a tu PC.

Para lograr esto hoy en día solo existen dos tecnologías disponibles:

CrossFire de ATI ó

Scalable Link Interface de Nvidia

Actualmente solo es posible conectar en paralelo tarjetas de video del mismo fabricante y requieres de una tarjeta madre que soporte alguna de estas configuraciones.

Características de Software

APIs

Las APIs o Interfaces para Programación de Aplicaciones, sirven a los desarrolladores de software para tomar ventaja de la aceleración que ofrecen las GPUs. Muchos programas y juegos son escritos usando estas APIs, pero para que tu aplicación realmente sea acelerada (o en algunos casos, pueda correr) necesitas que la GPU soporte el API y la versión indicada de ésta. Los APIs utilizados actualmente son:

Nombre Versión más reciente Descripción
Direct3D 11 Parte del API de Microsoft DirectX, orientada a la aceleración de gráficos en 3D, utilizada principalmente en videojuegos para Windows
OpenGL 3.2 API del grupo Khronos para aceleración 2D y 3D, utilizada principalmente en videojuegos para Windows, Linux, Mac, telefonos celulares y otros
OpenCL 1.0 API del grupo Khronos para aceleración de software en general para GPGPUs, utilizada principalmente en simulaciones físicas
DirectX Video Acceleration 2.0 Parte del API de Microsoft DirectX para la aceleración de codecs de video, actualmente tecnologías como PureVideo y UVD utilizan esta API.
Video Acceleration API 0.3
API de sistemas Unix para la aceleración de codecs de video

Si tienes un juego que pide DirectX 10, pero tu tarjeta solo soporta DirectX 9, es posible que el juego no corra, o no sea acelerado al 100%, lo cual significa que el desempeño podría ser lento.

Drivers

Los drivers o controladores son pequeños elementos de software que permiten que tu sistema operativo reconozca algún dispositivo de hardware y pueda utilizarlo. Es necesario un controlador por cada componente de hardware de tu equipo.

En las tarjetas de video, los drivers juegan un papel muy importante no solo para que tu sistema reconozca la tarjeta, sino para que logres obtener la aceleración del API que necesitas (Si estas pensando en comprar una tarjeta de video y deseas utlizar algún sistema operativo como Unix o Linux, es necesario que revises el soporte de los drivers, pues actualmente el soporte de aceleración de codecs de video o 3d puede ser mala o nula en algunos GPUs).

La calidad de los drivers varia considerablemente y en ocasiones contienen errores que no permiten que el GPU acelere correctamente las aplicaciones que deseas. En estas situaciones es recomendable probar con la última versión de drivers ( o en algunos casos, las versiones anteriores) que puedes descargar directamente de la página de los fabricantes:

nvidia.com

ati.com

Estos drivers estan en continuo desarrollo, agregando soporte para nuevos GPUs, corrección de errores y mejoras. Es recomendable actualizar los drivers de vez en cuando. En ocasiones pueden hacer que la tarjeta gráfica funcione de forma más rápida y eficiente.

Reproducción de video

Poder aprovechar la aceleración de codecs de video puede no ser una tarea fácil, en algunos casos, requieres una combinación particular de: sistema operativo, driver, reproductor de video y archivo de video.

Esto se debe a que diferentes sistemas operativos utilizan diferentes APIs de aceleración de codecs de video y es necesario que el driver de video soporte este API, algunos drivers pueden contener errores que no permitan la aceleración, es necesario un reproductor de video que también soporte el API de aceleración de codecs del sistema operativo en uso y finalmente no todos los codecs de video son acelerados (es necesario revisar el soporte de codecs de los drivers o del GPU).

Es posible que esta situación mejore en el futuro, conforme esta tecnología se vaya haciendo más común.

Si deseas aprovechar al máximo la aceleración de codecs, es recomendable revisar el soporte de drivers y reproductores de video para el sistema operativo que usas, antes de adquirir una tarjeta gráfica.

Ojalá esta guía te haya sido de utilidad, espero tus comentarios, mejoras o correcciones

Probando Google Chrome Beta en Ubuntu

El Navegador de Internet de Google, finalmente ya esta en versión de pruebas para Sistemas Linux y Mac. La versión para Linux ya incluye soporte para extensiones y organizador de marcadores. El anuncio oficial lo puedes encontrar en el Blog de Chromium.

Instalar Chrome en Ubuntu es un proceso muy sencillo, solo hay que descargarlo desde la página oficial, e instalarla con el ayudante de Ubuntu de un click.

De lo poco que he utilizado Chrome Beta en Ubuntu debo decir que se ve muy rápido y hasta ahora no he tenido problemas de estabilidad. Ya puedo bloquear el molesto Flash de las páginas utilizando la extensión FlashBlock, sin embargo debo decir que la cantidad de extensiones aún es muy pequeña comparado con Firefox. El modo para soporte de temas GTK+ aún puede mejorar, por el momento prefiero usar los temas incluidos.


Aunque Chrome todavía se encuentra  en versión beta me parece que pronto se podría convertir en una opción más para muchos usuarios de Linux.

Es Interesante ver el progreso de este navegador pues hay que recordar que Google planea utilizar el navegador Chrome en su Sistema Operativo Chrome OS el próximo año.

Por si aún no te haz dado cuenta, el Internet está cambiando al mundo (videos)

El Internet no solo es otro medio de comunicación, no solo es otra fuente de información. El Internet es también una plataforma que permite a las personas organizare y colaborar. ¿Quieres ver solo un poco de lo que se esta produciendo en Internet? Entra a Recursos Gratuitos.

Los siguientes vídeos muestran como el Internet esta cambiando al mundo:

  • Us Now (60:32 min, con subtítulos en español). Documental sobre el impacto social de las organizaciones en Internet. Muy recomendable.
Categorías:Mundo Libre Etiquetas:,

Lo mejor del mes de Noviembre 2009

¿Cómo elegir un buen Antivirus?

Muchos tenemos que lidiar con virus informáticos, y no necesariamente nuestros, muchas veces tenemos que reparar o administrar equipos de cómputo de otros y siempre los virus y otros tipos de malware son una molestia. Pero ¿Como poder elegir un buen Antivirus?

Muchas veces usamos un antivirus por recomendación, porque nos ha funcionado bien o simplemente porque es gratis o ya venía con el equipo. Hay muchos sitios en la red que hacen reseñas sobre todo tipo de software incluyendo Antivirus. Pero es común encontrar reseñas subjetivas que se basan en: facilidad de uso, votaciones de los lectores, …

Sin embargo, existen compañías serias que se dedican a realizar estudios estadísticos de la efectividad de una gran variedad de software antivirus, tanto versiones comerciales como gratuitas y open-source. Realizando pruebas como:

  • Malware detectado con vacunas actualizadas.
  • Malware detectado con métodos heurísticos.
  • Extracción de Malware.
  • Número de actualizaciones diarias.

y muchas otras. Estos reportes son utilizados por todo tipo de organizaciones para analizar los riesgos de sus equipos informáticos y tomar mejores decisiones.

Algunos sitios muy recomendables que se dedican a esto son los siguientes:

Si deseas aprender más sobre software antivirus la página de la Wikipedia es una buena opción.

La Lluvia Solar Podría Explicar las Altas Temperaturas de la Corona

Existen muchos misterios en el Universo que escapan la compresión del Hombre y en la Corona Solar se esconde uno de ellos.

De acuerdo a observaciones astronómicas hechas con los instrumentos más precisos, se calcula que la temperatura de la superficie visible del sol (fotosfera) es de alrededor de 6000 grados Kelvin. Sin embargo la temperatura de la Corona Solar, que es la parte más externa que se aprecia durante un eclipse de Sol (ver foto), es superior a un millón de grados Kelvin. Esto pareciera ser una contradicción, ¿Cómo es que la atmósfera del Sol es más caliente que su superficie? y hasta hoy en día el tema sobre como se calienta la Corona esta sujeto a debate y es considerado como uno de los mayores problemas no resueltos de la física.

Sin embargo nuevas investigación podrían traer algo de luz a este problema. En un reciente artículo de la revista New Scientist explica como los investigadores Patrick Antolin y Kazunari Shibata de la Universidad de Kyoto en Japón lograron simular la lluvia solar, compuesta de gigantescos trozos de plasma de cientos de miles de kilómetros cayendo a la superficie a velocidades de cien kilómetros por segundo, en un proceso parecido al de la lluvia aquí en la Tierra. Y el cual podría explicar las altas temperaturas de la Corona.

El artículo publicado por los investigadores con información técnica puede ser descargado aquí.

Categorías:Física Etiquetas:, , ,

Symbian ya es Open-Source

Ya fue liberado el código fuente del Kernel del Sistema Operativo más utilizado en teléfonos celulares

Symbian es un Sistema Operativo micro-kernel para la arquitectura ARM, cuenta con soporte de Symmetric multiprocessing, Preemptive multitasking y protección de memoria. Actualmente acumula aproximadamente el 50% del mercado de Smartphones. Fue adquirido por Nokia en el 2008 y actualmente es manejado por la Fundación Symbian quien prometió liberar por completo el código fuente de Symbian para Junio del 2010.

A nueve meses de la fecha prometida la Fundación Symbian anuncia la liberación del código fuente del Kernel (EKA2) bajo la licencia Eclipse Public License junto con el Kernel Taster Kit (un simulador ARM) y el hardware de desarrollo de bajo costo BeagleBoard.

En los últimos meses Nokia a mostrado un fuerte interés por el Sistema Operativo Maemo basado en Linux, pero esto no significa que Nokia se esté apartando de Symbian, de acuerdo a Nokia, Maemo esta orientado hacia el segmento de dispositivos móviles de alto desempeño.

Se acerca Ubuntu 9.10 Karmic Koala

Comienza el conteo regresivo. Solo faltan 17 días para la llegada de una nueva versión de Ubuntu, y viene cargada con muchas nuevas características y funcionalidades.

Ubuntu es la distribución de Linux más popular para escritorio hoy en día y con la versión 9.10 veremos Ubuntu Enterprise Cloud y Kubuntu Netbook Remix unirse a la gran familia de sistemas Ubuntu:

  • Ubuntu (con entorno Gnome)
  • Ubuntu Netbook Remix (con Gnome para Netbooks)
  • Ubuntu Server (para servidores)
  • Ubuntu Enterprise Cloud (para servidores)
  • Ubuntu Studio (con Gnome para artistas y diseñadores)
  • Kubuntu (con entorno KDE)
  • Kubuntu Netbook Remix (con KDE para Netbooks)
  • Xubuntu (con entorno Xfce)
  • Mythbuntu (con Xfce y MythTV para HTPC)
  • Edubuntu (con Gnome para escuelas)

Otra distribución que esperemos se una pronto es Lubuntu con entorno LXDE, diseñada para ser muy rápida y ligera, enfocada a netbooks y equipos viejos. Puedes revisar un preview de Lubuntu aquí.

Pero que podemos esperar en el nuevo Ubuntu Karmic Koala?

  • Arranque en menos tiempo y con Xsplash
  • Kernel 2.6.31.1
  • GRUB2.
  • Ext4 como sistema de archivos predeterminado.
  • La nueva versión 2.28 de Gnome.
  • Cambio de cliente de mensajería de Pidgin a Empathy.
  • Mejoras Visuales: nuevos temas, iconos y mejoras al instalador.
  • Regresa la opción para encriptación del directorio /home.
  • Ubuntu Software Center (AppCenter): para instalar y desinstalar software

  • Ubuntu One Para almacenar, sincronizar y compartir archivos.
  • Nuevos drivers Intel con mejoras de desempeño
  • Desaparece el daemon HAL.

Más imágenes de Ubuntu Karmic en Ubuntu Tutorials

Nvidia GT300: Listo para el Supercómputo

supercomputer1El GT300 no solo es otro chip de video, será usado en la supercomputadora Fermi, 10 veces más poderosa que la actual más rápida del mundo.

Recientemente Nvidia dio a conocer la arquitectura de su nuevo chip GT300 llamada Fermi. Pero ¿que hace a este diferente de los chips de video anteriores?

  • Mayor flexibilidad en programación, incluyendo soporte para hasta 32 kernels concurrentes.
  • Soporte de Memoria ECC.
  • Soporte de operación de punto flotante de doble precisión cumpliendo con el estandar IEEE 754-2008
  • Diseño optimizado para OpenCL.

En pocas palabras, este chip cumple con los requerimientos necesarios para ser usado en equipos de cómputo científico en aplicaciones de simulación o investigación, marcando el inicio formal del GPGPU Computing. Y el Oak Ridge National Laboratory será el primero en ensamblar un supercomputador usando la arquitectura del Fermi. Anuncio aquí.

Aunque aún se desconoce los números exactos, se rumora que el GT300 podría procesar 1.5 Tflops en precisión simple y 768 Gflops en precisión doble. Comparando con el último chip de ATI, el Radeon HD 5870 puede alcanzar unos sorprendentes 2.5 Tflops en precisión simple, pero solamente 500 Gflops en precisión doble, que es lo más importante en supercomputación. Aún se espera la versión FireGL del 5870, y el 5890 este mismo año. A pesar de todo los chips de ATI aún no cuentan con los estándares necesarios para ser usados en este tipo de aplicaciones.

El GT300 estará disponible en el mercado para el 1er trimestre del 2010. Más información en el sitio oficial de Nvidia.

Cómputo Eficiente: Diseñando Mejores Chips – Parte I

29 Septiembre 2009 abrahamscitech Deja un comentario

En esta miniserie trataré de resumir a grandes rasgos el transfondo cultural, económico y tecnológico que ha dado como fruto a las nuevas tecnologías y productos que comenzamos a ver en el mercado de cómputo como son: netbooks, las familias de procesadores Sun Microsystems UltraSPARC Tx, Fujitsu SPARC64 Venus, IBM Power7, Cell, Intel Atom, Larrabee y ARM Cortex-A9, GPGPU’s de ATI e Nvidia, y OpenCL.

Durante muchos años la industria de microprocesadores nos quiso vender la idea de que lo único que importaba al comprar una nueva computadora eran los Ghz que ofrecía, y desde hace unos 4 años nos vienen diciendo que lo importante ahora es el número de núcleos. Sin embargo las condiciones del mercado han traído a una nueva generación de usuarios, más preocupados por el costo, el gasto energético, la duración de la batería en equipos móviles y la velocidad con la que sus aplicaciones responden a sus comandos. Provocando una gran innovación, la creación de nuevos mercados y de nuevos productos radicales.

“El número de transistores que puede ser colocado en un chip se duplicará cada 2 años”

Gordon E. Moore

Esto es lo que nos dice la ya famosa ley de Moore, no obstante, aún no sabemos que hacer con todos estos transistores, ¿Cuál es la forma más eficiente de usar estos transistores para procesar X tipo de información? aún nadie lo sabe.

Los Ghz y el procesamiento secuencial
La máquina de Turing nos muestra una forma sencilla de escribir cualquier algoritmo, una operación después de la otra, llevándonos a lo que se conoce como programación secuencial; el paradigma de desarrollo de software más exitoso, adoptado por la industria del software a nivel mundial y donde se han invertido hasta hoy en día billones de dolares en la creación de software bajo este principio elemental.

Esto impulso a los fabricantes de chips a crear procesadores cuyo objetivo principal era ejecutar lo más rápidamente posible este tipo de programas. Todo el diseño de estos chips se basaba en su capacidad para ejecutar una o más instrucciones cada vez que un reloj central hacía un tick-tack, y buscando que cada vez, todo el sistema se moviera al ritmo de relojes más y más rápidos, llevándonos a una vertiginosa carrera por frecuencias de reloj más altas. Más Ghz.

Ejecutar este tipo de programas no resultó fácil, ni tampoco eficiente. Diseñadores de procesadores tuvieron que recurrir a toda una serie de ingeniosos métodos para ejecutar instrucciones más rápidamente: pipelines, out of order execution, caches, branch prediction, speculative execution,… que se enfocaban más en “administrar” el código que en realizar trabajo útil para el programador. Al mismo tiempo, conforme aumentaban las frecuencias de operación, así también aumentaban la temperaturas de los chips, esto provocado por los constantes cambios de estado de los componentes, al ritmo del reloj. Requiriendo continuamente soluciones de enfriamiento más eficientes.

Finalmente las altas temperaturas desaceleraron el ritmo con el que avanzaban los Ghz. Debido no solamente a las altas frecuencias, sino también a las crecientes corrientes de fuga provocadas por las escalas de fabricación tan increíblemente pequeñas de los nuevos chips, a lo que se conoció como la barrera térmica.

Esta nueva limitación provocó grandes fracasos en el mercado de microprocesadores como se vio con el Intel Pentium 4/ Tejas y forzó grandes cambios en la industria. Como podemos apreciar en la última conferencia de Hot Chips 2009, el procesamiento secuencial a muerto, la última linea de procesadores enfocándose en este tipo de arquitecturas, IBM Power, ha preferido dar un cambio de rumbo e ir en la dirección del Throughput-Computing.