Entradas

Mostrando entradas de junio, 2012

Optimizaciones en paralelo (I)

Imagen
Hace unos días leí acerca del procesador de la consola PS3 y su capacidad para realizar varias operaciones aritméticas en una sola instrucción . Es decir, dado que tiene un bus de 128 bits, podría sumar 4 valores de 32 bits en una operación. Me sirvió para darle vueltas a la cabeza e intentar hacer lo mismo en mi ordenador. La anchura del bus de un procesador es equivalente al número de cifras que puede tener la pantalla de una calculadora simple, sólo que en lugar de tratarse de dígitos decimales (del 0 al 9) son dígitos binarios (0 ó 1). El planteamiento es sencillo: supongamos que tenemos una calculadora de 12 dígitos y necesitamos sumar cuatro parejas de números de tres cifras -suponiendo que estamos seguros de que nunca nos vamos a pasar de 999-. Por ejemplo: 293 + 266 496 + 357 459 + 330 458 + 471 En lugar de realizar cuatro operaciones y dejar nueve ceros a la izquierda, podemos agrupar los números y "pegarlos" en dos sumandos: 293.496.459.458