Últimamente comienza a aflorar viejos problemas y confusiones de los microprocesadores actuales, los cuales hay muchos términos que no se daban tanta relevancia pero ahora si la tienen, comparaciones erróneas de distintos fabricantes y demás… visto que el parque de novedades anda unos días parado, hoy saldremos de Ikea para abordar estos conceptos.
– Instrucciones por Ciclo (IPC), frecuencias entre arquitecturas
Un tema bastante claro y que en muchos lugares da problemas y confusiones de los microprocesadores actuales y que años atrás no tenía tanta relevancia es el IPC… pero, ¿que es realmente?
Un microprocesador puede realizar un número determinado de instrucciones por ciclo… podemos entender de manera sencilla esto comparándonos con nosotros mismos en una cadena de montaje, tenemos un compañero a nuestro lado que realiza la misma operación que nosotros y el mismo tiempo límite, en el cual nosotros a la misma velocidad que nuestro compañero que realiza la misma operación que nosotros en el mismo tiempo nosotros, conseguimos hacer más tareas en ese tiempo que nuestro compañero, o menos tareas (mayor IPC o menor IPC).
El IPC en un procesador con el de otro, indiferentemente de la marca o modelo, debe compararse siempre a mismas frecuencias de reloj, puesto que estamos comparando la cantidad de operaciones que es capaz de hacer a una misma velocidad, no el rendimiento final.

En este ejemplo jugaría otro factor, que son memorias a 4000MHz vs 3400MHz, lo cual afectaría a la prueba de rendimiento mononúcleo… pero quitando el detalle de las memorias, esto sería una comparación de IPC válida, puesto que se le ha igualado el conteo de núcleo desactivando 2 núcleos y 4 hilos del 2700X, para igualar el conteo de núcleos y frecuencias como si fuese un 2600 de tan solo 130€.
Las instrucciones por ciclo son variables dependiendo de la aplicación determinada que estemos realizando, pero constantes en esa aplicación determinada siempre, de manera sencilla podemos decir que nosotros en una cadena de montaje podemos ser la leche montando tornillos pero se nos puede dar de culo montar sondas, siempre montaremos bien tornillos y tal vez fundamos al compañero pero el nos funda montando las sondas, a pesar de ser más lento en otras muchas tareas en un mismo espacio de tiempo.
Las frecuencias entre arquitecturas es uno de esos valores que tampoco debe darse tanta relevancia en si, si no más bien cuanto pueden subir dentro de los parámetros seguros del procesador entre ellas, es decir cuanto podremos overclockear nuestro procesador de manera segura por encima de otro.
Explicando esto de manera sencilla con los ejemplos anteriores, tu puedes ser más rápido que tu compañero haciendo una operación en el mismo espacio de tiempo, pero tal vez tu compañero haya usado una droga ilegal que lo haga ir mucho más acelerado, droga que si tu te tomas puede provocarte un infarto letal y a él no (Overclock, exceder las capacidades estipuladas por el fabricante como ideales para un producto determinado). Es un poco bestia el ejemplo, pero se asemeja a lo que sucede aquí.
Lo cual, si tu procesador es capaz de acelerarse de manera más o menos segura y su competidor no a pesar de rendir un poco más a la misma frecuencia, da igual que tu seas mas rápido que él a mismas frecuencias, el rendimiento final se decantará por el que más suba de vueltas puesto que la diferencia de instrucciones por ciclo no compensa la ganancia al poder hacer muchos más ciclos uno por encima del otro.
Es el caso que sucede con Zen+ y Coffe Lake Refresh, tienen mismo IPC en varias tareas, pero a la hora de subir frecuencias uno sube a 5GHz y el otro no pasa de 4.3GHz en el mejor de los escenarios posibles.
Por contra tenemos el otro caso, tenemos a Zen 2 que supera en IPC en un 15% a Coffe Lake pero tampoco sube como sus antecesores, lo que si hace Coffe Lake… pero en este caso la ganancia de IPC de uno por encima del otro, hace que el rendimiento final en el mismo número de núcleos quedan técnicamente empate con un Zen 2 a 4.3GHz y un Coffe Lake Refresh a 5GHz.
– Frecuencias Base, Turbo, XFR y PBO
Hay que aclarar esto, ya que hasta hace poco algunos fabricantes parece ser que no han querido aclararlo, dando lugar de nuevo a problemas y confusiones de los microprocesadores actuales, haciendo mala praxis con ello que al final acaba salpicando a un producto bueno, como le ha sucedido recientemente a AMD con Zen 2.
– Frecuencias Base y Turbo:
Las frecuencias base y turbo son dos características que actualmente nos encontramos en procesadores tanto Intel como AMD, significa que en cargas exigentes que no contemplen una carga general de todos los núcleos del procesador, la frecuencia máxima anunciada del procesador (turbo) mayormente se aplicará en uno o dos núcleos del procesador solamente y no en todos, a excepción del nuevo 9900KS que si se aplicará en todos… pero en los demás trabajarán uno o dos núcleos a máxima frecuencia y los demás a la frecuencia base, nunca por debajo de esta si no se superan los límites térmicos del diseño.
La base simplemente es que en cargas donde abarque todo el procesador (conteo de núcleos total), se trabajará en todos los núcleos a esa frecuencia.

– eXtended Frecuency Range 2 (XFR) y Precision Boost Overdrive (PBO)
Estas tecnologías son exclusivas de AMD y tienen un modo distinto de funcionar a las de la competencia. Estas tecnologías existen como una alternativa al poco overclock manual que pueden realizar estos procesadores en comparación a su contra parte azul.
XFR funciona realizando un pequeño overclock a la frecuencia turbo sin comprometer la fiabilidad del silicio controlando tres parámetros vitales en el intento, que es temperatura de trabajo, potencia y la capacidad del VRM.

Es decir, esta tecnología se basa en meter un impulso mayor a lo que ofrece un turbo convencional si las condiciones del silicio en ese momento lo permiten (baja corriente, poca demanda de trabajo multihilo).
PBO simplemente nos permite extender los márgenes seguros que utiliza XFR para obtener un overclock automático mayor al ofrecido de serie (tempeeratura de trabajo, potencia y capacidad del VRM), eso si renunciando en parte o totalmente a la fiabilidad del silicio dependiendo de nuestra configuración, puesto que su uso anula la garantía y excede el diseño térmico inicial del fabricante.
– Conteo de núcleos e hilos y diferencias entre marcas

Los núcleos a día de hoy están cogiendo mucha fuerza, puesto que nos hemos topado con una barrera después de la muerte de la Ley de Moore por llegar a los límites del silicio, hasta que haya un sustituto viable de este, los chips crecerán de tamaño tanto a lo alto como a lo ancho.
Con crecer a lo alto nos referimos al apilamiento de capas creando chips tridimensionales, a lo ancho nos referimos al conteo de núcleos en vez de subir más las frecuencias, las cuales el silicio ya ha tocado su tope rondando los 5GHz.
Centrándonos en el conteo de núcleos e hilos (Simultaneous Multi-Threading o SMT e HyperThreading o HT), lo que conseguimos con ellos es paralelizar más una tarea concreta o programa.
Explicándolo con un ejemplo anterior, en una cadena de montaje podemos hacer una tarea compleja que nos toca hacerla a nosotros solos, cuando hemos llegado a nuestro límite máximo en el que no podemos ir más rápido (overclock) ni somos tan buenos haciendo operaciones (IPC), solo nos queda un plan B… pedir ayuda a más operarios (núcleos), dividir la tarea entre todos y cada uno hacer una parte de manera coordinada para atajar tiempo.
Esto tiene unos pros y unos contras, los pros es que nosotros como operarios no solo resolveremos nuestra porción de tarea en menor tiempo (porque nos corresponde menos trabajo que antes al repartirlo), si no que nos cansaremos menos (ahorraremos energía), pasaremos menos calor (menores temperaturas) con lo cual ganaremos más eficiencia a diferencia del modelo antiguo, que a partir de determinada velocidad de trabajo (frecuencias) el consumo se dispara siendo no proporcional a la ganancia obtenida, perdiendo eficiencia.
Los contras es que las cadenas de montaje (programas) no están adaptadas para puestos con múltiples operarios aún(núcleos), lo cual esto lleva un método de adaptación lento y progresivo en el que estamos actualmente con procesadores que no hacen más que sobredimensionarse a lo ancho sin control aparente, aunque con buena evolución… del cual solo se beneficia al 100% el mercado profesional, donde aquí hay años de ventaja por haber paralelizado una década antes la mayoría de tareas pero no en el doméstico, gracias a una AMD incompetente en el mercado y una Intel racionando y estacando el proceso dejando los procesadores multinúcleo a precios prohibitivos limitándonos el crecimiento y el desarrollo en este mercado.
Además de otro contra del que no se habla muy comúnmente, es que toda paralelización tiene un límite, pudiendo provocar problemas y confusiones de los microprocesadores actuales puesto que más núcleos no siempre significará potencia, es decir tu puedes dividir una tarea en varias partes y cada operario que realice la suya, pero llega un momento en el que las porciones de trabajo se dividirán de manera tan pequeña que en algún momento dejará de ser eficiente, donde el hecho del dividir una tarea tanto sea contraproducente… por eso es importante encontrar un equilibrio entre núcleos, hilos y frecuencia, además de seguir evolucionando en la búsqueda de un sustituto viable del silicio o que se abarate su fabricación en masa de los posibles prototipos que ya están sobre la mesa para seguir progresando.
Los hilos SMT o HT simplemente son extensiones del procesador ligada a los núcleos, las cuales los permite procesar instrucciones de otros subprocesos en un núcleo aunque ya están realizando una… en los ejemplos anteriores, sería que un operario puede trabajar en dos cadenas a la vez, mientras en una de ellas espera algún tiempo hasta que le sirvan otra operación a realizar de la cadena, se va a hacer una tarea a la cadena de al lado que si le está sirviendo otra tarea, por ejemplo… lo cual esto aumenta la productividad incluso en un 40% del procesador a diferencia de sin Simultaneous Multi-Threading.
El nombre real de la tecnología es Simultaneous Multi-Threading, AMD e IBM lo llaman por su nombre original, Intel por contra lo llama Hyperthreading, pero el principio de la tecnología es el mismo.
Hasta aquí problemas y confusiones de los microprocesadores actuales, dudas recordad que están los comentarios.