Tengo una pregunta para todos???
-
El branch prediction parece que es como aquellos programas tipo "Navegue más rápido!" que se vendían cuando navegavamos a 5kb/s.
Precargaba los enlaces en los que todavía no habías pinchado,pero si saltabas a otra pagina externa,iba peor…A no ser para programas creados específicamente para Intel o AMD,dependes de si "acierta" en su predicción.(como el hombre del tiempo):p
Puede ser esta,en parte,la razón de tantas diferencias entre benchmarks sintéticos y de juegos? Que vayan mejor con un micro que con otro,a la misma frecuencia?Salu2
-
El branch prediction parece que es como aquellos programas tipo "Navegue más rápido!" que se vendían cuando navegavamos a 5kb/s.
Precargaba los enlaces en los que todavía no habías pinchado,pero si saltabas a otra pagina externa,iba peor…A no ser para programas creados específicamente para Intel o AMD,dependes de si "acierta" en su predicción.(como el hombre del tiempo):p
Puede ser esta,en parte,la razón de tantas diferencias entre benchmarks sintéticos y de juegos? Que vayan mejor con un micro que con otro,a la misma frecuencia?Salu2
El Branch Prediction puede tener una parte pequeña de responsabilidad en eso, pero la razón principal de que unos micros rindan más que otros a igual frecuencia es que son capaces de ejecutar más instrucciónes en un ciclo de reloj. Si estoy en lo cierto, en un procesador de 3000mhz hay 3000 ciclos por segundo. El asunto es que la cantidad no es exacta, por ejemplo, teoricamente los Pentium 4 podía realizar un máximo de 2 operaciónes por ciclo, pero eso no significa que las pueda hacer siempre, solo en determinadas situaciones (y en el caso de los Pentium 4 con un pedazo pipeline de 28 etapas tardaba una barbaridad en ejecutar una instrucción, de ahí su escaso rendimiento comparado con los K8 a igual frecuencia).
Los K8 realizan 3 operaciónes por ciclo como máximo y tienen un pipeline de 13 etapas si no me equivoco. En los K10 es similar, antes hablabamos de cambios significativos entre Core 2 y Core i7 pero no hay duda de que entre el K8 y el K10 la diferencia si que es muy poca. Los Core 2 Duo pueden realizar hasta 4 operaciones por ciclo, en parte gracias a Macrofusion y si nehalem tiene más posibilidades de ejecutar 4 operaciones por ciclo que los Core 2 es en parte por la mejora en macrofusion (pasa de 32 a 64 bits). Lo único que tienen los K10 que no tienen ni los Core 2 ni los i7 a nivel interno es capacidad de leer datos de 32bits directamente al hacer el fetch (al menos tengo entendido que los i7 no poseen esta caracteristica), lo cual también tiene su impacto a la hora de ejecutar las instrucciónes (un instrucción de 32 bits de largo un core 2 lee primero los primeros 16 bits y luego los otros 16 bits, mientras que un K10 lo hace de golpe).
En resumidas cuentas (P4, K8/10 y Core2/i7) :
P4-> 3000mhz * 2 operaciones por ciclo = 6000 millones de operaciones por ciclo
K8/K10-> 3000mhz * 3 operaciones por ciclo= 9000millones de operaciones por ciclo
Core 2/i7-> 3000mhz * 4 operaciones por ciclo= 12000millones de operaciones por ciclo*A tener en cuenta que estamos hablando del maximo, no quiere decir que esas cifras se cumplan siempre, es un simple máximo teorico. Se supone que está es la principal razón de las diferencias de rendimiento de los diferentes micros a igual frecuencia.
-
Por cierto, ya que hablabamos de futuros lanzamientos, en 2010 tenemos i9s:
Son los hexacore, con 6 núcleos, 12 hilos, 12Mb de L3 y de 32nm. Y teniais razón, parece que los Core i3 no son nehalem, son los core 2 xD.
-
El Branch Prediction puede tener una parte pequeña de responsabilidad en eso, pero la razón principal de que unos micros rindan más que otros a igual frecuencia es que son capaces de ejecutar más instrucciónes en un ciclo de reloj. Si estoy en lo cierto, en un procesador de 3000mhz hay 3000 ciclos por segundo. El asunto es que la cantidad no es exacta, por ejemplo, teoricamente los Pentium 4 podía realizar un máximo de 2 operaciónes por ciclo, pero eso no significa que las pueda hacer siempre, solo en determinadas situaciones (y en el caso de los Pentium 4 con un pedazo pipeline de 28 etapas tardaba una barbaridad en ejecutar una instrucción, de ahí su escaso rendimiento comparado con los K8 a igual frecuencia).
Los K8 realizan 3 operaciónes por ciclo como máximo y tienen un pipeline de 13 etapas si no me equivoco. En los K10 es similar, antes hablabamos de cambios significativos entre Core 2 y Core i7 pero no hay duda de que entre el K8 y el K10 la diferencia si que es muy poca. Los Core 2 Duo pueden realizar hasta 4 operaciones por ciclo, en parte gracias a Macrofusion y si nehalem tiene más posibilidades de ejecutar 4 operaciones por ciclo que los Core 2 es por la mejora en macrofusion (pasa de 32 a 64 bits). Lo único que tienen los K10 que no tienen ni los Core 2 ni los i7 a nivel interno es capacidad de leer datos de 32bits directamente al hacer el fetch (al menos tengo entendido que los i7 no poseen esta caracteristica), lo cual también tiene su impacto a la hora de ejecutar las instrucciónes (un instrucción de 32 bits de largo un core 2 lee primero los primeros 16 bits y luego los otros 16 bits, mientras que un K10 lo hace de golpe).
En resumidas cuentas (P4, K8/10 y Core2/i7) :
P4-> 3000mhz * 2 operaciones por ciclo = 6000 millones de operaciones por ciclo
K8/K10-> 3000mhz * 3 operaciones por ciclo= 9000millones de operaciones por ciclo
Core 2/i7-> 3000mhz * 4 operaciones por ciclo= 12000millones de operaciones por ciclo*A tener en cuenta que estamos hablando del maximo, no quiere decir que esas cifras se cumplan siempre, es un simple máximo teorico. Se supone que está es la principal razón de las diferencias de rendimiento de los diferentes micros a igual frecuencia.
me parece que el ciclo no corresponde con el periodo de la frecuencia. En pics por ejemplo tienes 1 ciclos máquina por cada 4 ciclos de reloj, y una instrucción ocupa un ciclo maquina, menos algunas operaciones de salto que tardan 2 ciclos maquina
-
me parece que el ciclo no corresponde con el periodo de la frecuencia. En pics por ejemplo tienes 1 ciclos máquina por cada 4 ciclos de reloj, y una instrucción ocupa un ciclo maquina, menos algunas operaciones de salto que tardan 2 ciclos maquina
Te refieres a esto? http://es.wikipedia.org/wiki/Microcontrolador_PIC
No he oido hablar nunca de ciclos máquina….
-
Aki en la parte de reloj lo pone:
PIC16F87X - Wikipedia, la enciclopedia librePero puede que que los procesadores funcionen de otra manera. no lo se la verdad….
-
Lo que pasa es que eso no es un microprocesador x86, es un microcontrolador, no están orientados para lo mismo ni a realizar el mismo tipo de calculos. Si no me equivoco, esos chips se utilizan para controlar circuitos electronicos y son preprogramados.
No me habia fijado nunca en los PICs, me gustaría saber si tienen ALU y FPU…. (aunque me parece que no, y si tienen, serán muy simples...).
-
Lo que pasa es que eso no es un microprocesador x86, es un microcontrolador, no están orientados para lo mismo ni a realizar el mismo tipo de calculos. Si no me equivoco, esos chips se utilizan para controlar circuitos electronicos y son preprogramados.
No me habia fijado nunca en los PICs, me gustaría saber si tienen ALU y FPU…. (aunque me parece que no, y si tienen, serán muy simples...).
un microcontrolador es un miniordenador, con su cpu, su memoria, sus buses de e/s,…..
Tienen normalmente una arquitectura Von Neumann o Harvard.... con instrucciones risk.
Lo hay incluso de 32 bits.... -
Sí, un ciclo maquina es el numero de ciclos que tarda un procesador en resolver una instrucción, a veces tarda más o menos dependiendo del tipo de instrucción que sea, más compleja o menos, no lleva el mismo tiempo una suma simple que una raiz cuadráda con decimales (es un decir).
PD. Puedes medir el trabajo de un procesador en Hz o en Flops, lo más real es lo segudo.
-
Sí, un ciclo maquina es el numero de ciclos que tarda un procesador en resolver una instrucción, a veces tarda más o menos dependiendo del tipo de instrucción que sea, más compleja o menos, no lleva el mismo tiempo una suma simple que una raiz cuadráda con decimales (es un decir).
PD. Puedes medir el trabajo de un procesador en Hz o en Flops, lo más real es lo segudo.
Supongo que ninguna CPU "de las de ahora" tarda menos de un ciclo en ejecutar una instrucción…
-
Depende mucho del tipo de procesador, pero si, logran hacer muchos FLOPS por hercio. Hay otra medida también que es IPS, instrucciones por segundo. Seguro que os suena mucho más MIPS y GFLOPS. Esto de los FLOPS tampoco es una referencia real de rendimiento en un sobremesa, pero es una buena referencia, sobre todo en procesadores gráficos.
Processors - Intel microprocessor export compliance metrics
PD. Más medidas, MTOPS, million theoretical operations per second. Una operación puede constar de más de una instrucción.
-
Por cierto, en la tabla que he puesto arriba se ven dos sockets para core i5, el 1156 y el 1155, supongo que serán retrocompatibles el uno con el otro no? Por que como empleen diferentes placas creo que Intel la ha cagado pero bien…
-
Pensaba que solo iba ser otro socket para i5 e i3, dos distintos!!!! madre mia cuanta historia, veras si ya la gente se liaba con amd e intel ahora ni te cuento para cualquiere que inicie sus pinitos en montarse su pc, cuanta tonteria.
-
me parece que el ciclo no corresponde con el periodo de la frecuencia. En pics por ejemplo tienes 1 ciclos máquina por cada 4 ciclos de reloj, y una instrucción ocupa un ciclo maquina, menos algunas operaciones de salto que tardan 2 ciclos maquina
Un PIC es un microcontrolador con un microcodigo RISC muy sencillito y con una arquitectura muy sencilla tambien y con aplicaciones muy limitadas. No entiendo donde esta el punto de comparacion entre microcontroladores y procesadores x86/64.
Vamos yo el PIC es el integrado programable mas simple que conozco, y la mayoria son de 8bit, son programables, pero compararlo con un procesador es como comparar una calculculadora o un reloj de pulsera con un portatil. -
jodoo la que habeis liado asi a lo tonto que parecia la cosa…
la madre del cordero, creo que me perdi en el primer ciclo cuando sali rebotado en el vaciado del buffer y me di de bruces contra 4 cores mal puestos que me confundieron con una instruccion pequeñita y me querian volver a meter en otro ciclo...ni de coña jajajaja
pd: que cosas mas interesantes que sabeis
-
Un PIC es un microcontrolador con un microcodigo RISC muy sencillito y con una arquitectura muy sencilla tambien y con aplicaciones muy limitadas. No entiendo donde esta el punto de comparacion entre microcontroladores y procesadores x86/64.
Vamos yo el PIC es el integrado programable mas simple que conozco, y la mayoria son de 8bit, son programables, pero compararlo con un procesador es como comparar una calculculadora o un reloj de pulsera con un portatil.Las bases de un PIC, un ARM o un x86 son las mismas. Hoy en día un PIC puede ser mucho más complejo y potente que los primeros x86, pero de lo que está hablando es de que una instrucción puede tardar más o menos ciclos en ejecutarse.
-
Claro, pero hay tanta diferencia entre ellos dos que la relacion ciclos/instrucciones o la manera en que se ejecutan en cada uno guardan poca relacion, y solo en eso, en la base de funcionamiento.
Salu2.
-
Sí, llevas razón, si en un procesador actual una instrucción toma mayor o menor fracción de un ciclo de reloj en un PIC puede llevar varios ciclos. Los hay incluso de 32bit que manejan USB Ethernet y demás… y luego el tema de los ARM es increíble lo que han avanzado estos pequeños procesadores pero evidentemente no se acercan al nivel de los actuales x86.
-
Las bases de un PIC, un ARM o un x86 son las mismas. …...
Pues seran las bases fisicas de funcionamiento de cualquier circuito logico digital, porque por lo demas ni la parte logica ni la arquitectura fisica y logica del chip se parecen, comparten metodos pero los usan de forma distinta, y la relacion ciclos/instrucciones es completamente distinta en cada uno.
-
Si es una caña los chips que van saliendo, cada vez se acerca mas al pc en una pastilla negra ja ja;D
Los ARM si que podian hacer dispositivos de bolso o bolsillo con una autonommia un poco mas en condiciones, a mi el Snapdragon me ha causado mucha curiosidad.
Salu2.