Rendimiento AMD y INTEL
-
Muchas veces me he preguntado por que un AMD rinde igual que un INTEL, pero con la diferencia de que, por ejemplo, el AMD va 800 mhz más lento. ¿Cual puede ser la razón? La cache L1, las instrucciones… Siempre he tenido la misma duda... Y ya de paso podríais comentar también que es mejor, en vuestra opinión, esforzarse en subir más mhz, o intentar mejorar el rendimiento a menos velocidad.
Graciassss!!!!
-
Estás preguntando algo muy técnico, intentaré explicártelo de forma más o menos comprensible.
Para empezar diremos que son dos arquitecturas distintas. Como todos sabemos no todo depende de los MHZ, eso es como decir que la potencia de un motor es totalmente dependiente de las revoluciones por minuto (hice este simil hace tiempo y me sigue pareciendo muy acertado). Hay que fijarse en muchas cosas.
AMD sigue la tónica de aprovechar más los MHZ. Tiene más pipelines que un Intel (Pipeline son las "vías de acceso de la información al "cerebro" del procesador). Haremos otro simil de coches. AMD sería una carretera limitada a 80 Km/h, pero de 3 carriles, en cambio, Intel estaría limitada a 120 Km/h, pero con un sólo carril. Por donde pasarían más coches por minuto? Por el AMD, claro. Pero claro, no todo son ventajas. Los Pipeline de los AMD son bastante lentos. Además, si la información viene en serie se aprovecha sólo un pipeline, en este caso Intel gana en rendimiento.
Otro factor es la unidad de cálculo de coma flotante. Los ordenadores actuales, para calcular decimales, utilizan el sistema de coma flotante, no voy a explicarlo ahora. La unidad de coma flotante del procesador AMD es muy superior al de Intel. Por lo que en programas de cálculo de vectores, 3D etc… AMD funciona mucho mejor. Problema, Intel saca sus MMX, SSE, SSE2, SSE3, etc... Que son "atajos", es decir, cálculos aproximados, que están implementados en el mismo procesador. Ventaja de esto, que no hay que hacer cálculos, si el programa está optimizado para estas tecnologías, se salta el paso de cálculo de coma flotante, con lo que conseguimos muchísimo rendimiento. Estos "atajos" son sólo válidos para programas optimizados para ello, con lo que dependemos del equipo de programación que ha hecho el programa en cuestión.
La gran ventaja de Intel es que tiene su propio compilador para sus procesadores desde hace mucho tiempo. Con lo que a un equipo de programación no le cuesta nada compilar su programa para ese procesador en concreto. AMD ha hecho su propio compilador con los AMD 64, así que ahora esa desventaja de AMD desaparece.
Otra ventaja de AMD es que es mucho mejor en cálculo predictivo. Veamos, si ahora tal programa ha ejecutado cierta instrucción, luego puede hacer una serie de cosas (por ejemplo 50 cosas distintas), el cálculo predictivo se dedica precisamente a eso, a "predecir" que instrucción va a ejecutarse la siguiente. La carga en memoria, y si acierta tarda menos en ejecutarse. En cambio, si falla, tiene que cargar la otra.
Que AMD rinda igual que un Intel yendo 800Mhz más despacio es muy relativo, depende del resto de componentes del pc (la placa base tiene que ser distinta, con lo cual el rendimiento no es directamente equiparable) también depende de los programas que se ejecuten.
Lo mejor, para los usuarios, sería que no existieran optimizaciones de código para ninguna plataforma, así veríamos mejor en qué plataformas funciona mejor cada programa.
En cuanto a si es mejor Mhz u optimización de la cpu. Hoy por hoy se está tendiendo a mejorar el rendimiento, porque se está llegando a unas velocidades muy altas, con lo que la disipación de calor empieza a ser un problema. Yo prefiero unos procesadores muy optimizados y a mucha velocidad, jeje... Alguién me regala un Dothan a 4Ghz????
-
Muy buena la respuesta, gracias, ya se un poco mas! Ya habia oido algo sobre los pipelines, pero no sabía muy bien que eran. Sabía también que se tenía en cuenta cuantos más mejor y también el tamaño (mas largos son peores). Pero he tenido curiosidad por saber esos detalles :sisi: . Lo de las instrucciones sabia que eran optimizaciones, pero no que eran atajos para "saltarse" el cálculo de coma flotante… En mi opinión, la cache L1 también influye, tengo oido que los AMD tienen algo mas (y simpre se nota).
Buff, la verdad es que está muy crudo el elegir entre intel y amd... Yo creo que intel está alcanzando la barrera de la velocidad máxima (la temperatura como dices es ya muy alta; ejemplo prescott) y pronto tendrá que hacer como amd... quizas entonces nos encontraremos con un buen procesador :rolleyes: . Haber si conseguimos finalmente ese Dothan!!!!! :risitas:
Ningun micro sale de rositas, para acertar hay que analizar todo al milimetro...
Por cierto, muy acertado el simil. Se ve que te as currado la respuesta! -
Calla, calla, iba a escribir 5-6 lineas, pero, iba escribiendo, se me ocurrían más cosas, seguía… Así hasta que ha salido ese "tocho".
La caché L1 influye, claro está, y la L2, y la L3 si la tiene. Lo que pasa es que eso es más o menos estándar, cuanto más mejor, simplemente.
Lo largo que es un pipeline influye negativamente, eso es cierto, pero como todo, no es tan sencillo. El pipeline de los Pentium debe ser rapidísimo, por lo que "sufre" menos por tener más etapas. Es simplemente que un datos tiene que pasar por más etapas antes de ser procesado, con lo que tarda más. En cambio, si el pipeline se llena (instrucciones en serie) la velocidad es muy buena, se tira menos de memoria, etc...
-
Eske hay temas que tienen tela….
Bueno claro, las L1 influyen, pero también las latencias que tienen, porque mira al prescott, mas memoria pero dicen que han subido las latencias como nada... (sobretodo en la L2). Y luego que ahora tiene 32 etapas, creo (frente a 20 de los northwood), Y ésto no le beneficia mucho, a mayores velocidades quizas, pero ahora no... muy crudo lo tiene intel...
-
Pero es que eso también depende, la arquitectura Intel es mucho más dependiente de la caché que la AMD, por eso los Celeron son malos procesadores (por no decir algo más fuerte) y los Duron/Sempron funcionan muy bien.
Lo que de Intel lo tiene crudo… Han empezado a salir placas base para Intel Dothan, que son auténticos pepinos, si se les ocurre ir por este camino y consiguen pasar a 64 bit, veremos quien lo tiene crudo,jeje...
-
Claro, lógico, dependen más de la cache porque tienen que mantener sus pipelines siempre llenos para mantener un rendimiento bueno, y claro, con tanta etapa, pues más necesaria es la caché. En cuanto a los Dothan tienes razon, un 2,4 con un bus 533 se come con patatas a un P4 tradicional de sobremesa, por ejemplo a 3,4. Los dothan, con pipelines cortos (creo que 10 etapas), una cache L2 de 2MB (si no me equivoco), y velocidades decentes, tiran que da gusto. Pero… tu crees que rectificará ahora, despues de habernos estado vendiendo sus P4 y haciendonos creer lo buenos que eran (ojo, que no digo que sean malos, eh!!)? Al parecer, ahora la intención de intel es ir hacia el dual core, y aumentar la caché L2, pero no creo que abandone su famosa tecnología NetBurst (La de subir y subir mhz) y retroceda para acortar sus pipelines... eso sería cambiar por completo su arquitectura!!! Mmmm, todo está por ver...
Por cierto, alguien sabe cuantas etapas tienen los pipes de AMD? Es por curiosidad... :verguen:
-
Pues asi de memoria juraria que hasta el barton 10 etapas y el A64 12. EL northwood creo que rondaba las 20 y el prescott unas 31.
-
el t-bred 8 pipes y el palomino 7
-
Estás seguro de eso? Habria jurado que todos los "K7" usaban la misma estructura en la pipeline de los enteros.
-
Todos los Athlon XP tienen la misma estructura interna, la única diferencia es la caché L2. Además, creo recordar que tenían 3 pipelines, pero no lo puedo decir con certeza (el alcohol hace estragos en mi memoria, jejejeje…)
-
3 ALU's y 3 FPU's