[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Relativo al tema de i686



* Fernando Poza <fernando/dot/poza/at/ies-def.upm.es>
  [2002-11-29 09:48 (CET)]

> las cosas han evolucionado como cuenta por ahi, o sea, disparatadamente,
> yo tiendo a pensar que las diferencias entre los micros de ahora y el
> 386 deben ser abismales.

Eso depende, lo que no ha cambiado casi nada, es el set de
instrucciones de IA32, que solo se ha incrementado en una
instruccion (CPUID) y las extensiones MMX/MMX2, y 3DNOW (AMD).
Dichas extensiones son para operaciones con más de un dato,
diferenciándose ambas, en que la de Intel corta la FPU y las de
AMD no. Pentium II es básicamente identico al Pentium MMX, y
creo recordar (no estoy muy seguro) que CPUID se introdujo en el
Pentium III, así como las MMX2, pero que el Pentium IV no
incorpora ninguna instruccion adicional. 'Pero' más adelante te
comento en dónde SI se pueden hacer optimizaciones...

> En algún mensaje se ha dicho que la diferencia no es tan grande. ¿Esto
> es realmente asi?. Puede ocurrir que el propio código fuente, o el
> compilador, no aproveche los micros en cuestión, con lo que,
> efectivamente, no se ganaría mucho recompilando. 

El compilador no sé hasta que punto puede reconocer y utilizar
'hábilmente' dichas extensiones, pero dicen que sí, que se ganan
FPS si recompilas kernel, librerias principales, y los programas
multimedia (incluyendo XWindow).
Sin embargo, lo que sí ha cambiado es el diseño de los micros, y
sobre todo, el funcionamiento de sus cachés, que era simple en
el 386 y luego se comvirtio en doble (datos/código), con
pipeline (prefetch), dual pipeline, etc... Esta es la parte en
donde un compilador SI puede optimizar, ya que lo unico que
tiene que hacer para aprovecharlo, es reordenar el código que
genera (recordemos que lo único que hace, es coger código fuente
y convertirlo en código máquina, es decir, instrucciones propias
de la arquitectura destino, en este caso IA32)

> En fin, lo que no entiendo es como en debian, o en donde se prepare la
> distribución no realizan la compilación para un micro un poco más
> actualizado.

El caso de las optimizaciones para caches etc no deberia tener
grandes consecuencias, pero si se incluye el uso de extensiones,
significa que el binario resultante NO correrá en micros
inferiores sin esa extensión, es decir, si el compilador detecta
un uso optimizado de MMX, no funcionará en Pentium, 486, ni
386...

Personalmente, en ese sentido, me gusta la aproximación de
gentoo, compilarlo todo :)

-- 
Rafael Gawenda
                                             2:346/7.549@fidonet
                                    Registered LiNUX user #93375
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Caerse, está permitido; levantarse, es obligatorio! (Proverbio
Ruso)

Attachment: pgpJIScUi6MjY.pgp
Description: PGP signature


Reply to: