Next: Búsqueda
Up: Hardware
Previous: El problema del Tiempo
Índice General
El principal avance a nivel de hardware relacionado con la
generación de movimientos fue la utilización de palabras de mayor
tamaño de bits, lo cual está directamente relacionado con la
utilización de bitboards para generar jugadas de acuerdo a una
regla prediseñada.
Los primeros computadores con cantidad limitada de palabras no
podían utilizar la técnica de los mapas de bits, razón por la cual
la generación de movimientos pasaba a ser un proceso bastante caro
en cantidad de CPU. Los movimientos eran generados a través de
fórmulas matemáticas las cuales al no utilizar el tipo de
operación básica de los computadores (como es el caso de los
bitboards) tomaban un tiempo considerable en ser generadas.
Máquinas de bajo tamaño en palabras de bits deberán hacer uso de
su capacidad de procesamiento con tal de compensar la carencia de
velocidad en el proceso de generar movimientos. El aumento en el
tamaño de palabras de bits en los computadores logró hacer que los
movimientos fueran generados directamente en Hardware. Con esto se
aceleró considerablemente este proceso y los esfuerzos pasaron a
mejorar la búsqueda y la capacidad de la función de evaluación.
La mayoría de las computadoras de hoy utilizan arquitectura de 32
bits (Pentium, Atlon, Cyrix). Esto implica que no pueden manipular
en forma eficiente instrucciones de 64-bits. Incluso a pesar de
que los últimos compiladores soportan variables de tamaño 64 bits
(Delphi, Visual C++, gcc, Watcom, etc.) estos deberán dividir la
variable en dos instrucciones de 32 bits antes de enviarlas al
procesador para luego volver a juntarlas. Esto es un problema en
performance. Las computadoras de 64 bits que podemos encontrar en
el mercado no son de alto costo (por ejemplo, el modelo Dec Alpha
21164 tiene un valor cercano a los US 3.000) pero no son de uso
común como las de 32 bits y se espera que pasen algunos años antes
de tenerlas como un estándar.
Por su puesto la velocidad de procesamiento juega acá un rol
esencial(como prácticamente en todos los factores), puesto que de
no ser suficiente se perdería la capacidad ganada en tiempo con
los mapas de bits. De existir poca velocidad, por más rápida que
sean las operaciones con bitboards, la lentitud de los otros
procesos opacará la labor de esta etapa. El factor de memoria acá
no juega un rol tan decisivo puesto que se necesita para mantener
los movimientos disponibles a partir de una posición, los cuales
promedian 30 en posiciones de medio juego.
Next: Búsqueda
Up: Hardware
Previous: El problema del Tiempo
Índice General
Santiago de Chile, Julio 2003