septiembre 1, 2021 3:52 pm

proccess1A menudo cuando vamos a contratar servicios de hosting vemos términos como Cores, vCPU, o GHz sin embargo no todos tienen claro lo que significan ni cómo afectan el rendimiento del servicio que deseamos contratar. En este artículo analizaremos los términos relacionados con los procesadores, como compararlos y como seleccionar el cpu correcto de acuerdo con el uso que planeamos darle.

Que es un CPU (Unidad central de procesamiento):

El CPU del servidor es el «cerebro» del mismo y es en donde se ejecutan todas las instrucciones y procesos, en servidores dedicados el CPU o los CPU’s son de uso exclusivo para  un solo cliente mientras que en los servidores virtuales suele ser compartido entre varios clientes y en Hosting Compartido entre muchos clientes (cientos o incluso miles). Existen miles de modelos de CPUs de los principales fabricantes como Intel y AMD, sin embargo en años recientes el mercado de servidores dedicados es dominado por los poderosos AMD Epyc e Intel Xeon Scalable.

Cores:

Los CPU Modernos incluyen múltiples cores, cada core es como un mini-cpu y el CPU empaqueta desde 2 cores por CPU hasta más de 100 dependiendo de la potencia del servidor para de esta forma lograr mayor capacidad de procesamiento.

Hyper-Threading:

Intel lo define de la siguiente manera:

«La tecnología Intel® Hyper-Threading es una innovación de hardware que permite que se ejecute más de un subproceso en cada núcleo. Más subprocesos significa que se puede hacer más trabajo en paralelo.

¿Cómo funciona Hyper-Threading? Cuando la tecnología Intel® Hyper-Threading está activa, la CPU expone dos contextos de ejecución por núcleo físico. Esto significa que un núcleo físico ahora funciona como dos «núcleos lógicos» que pueden manejar diferentes subprocesos de software. El procesador Intel® Core ™ i9-10900K de diez núcleos, por ejemplo, tiene 20 subprocesos cuando Hyper-Threading está habilitado.

Dos núcleos lógicos pueden realizar tareas de manera más eficiente que un núcleo tradicional de un solo subproceso. Aprovechando el tiempo de inactividad cuando el núcleo antes estaba esperando que se completaran otras tareas, la tecnología Intel® Hyper-Threading mejora el rendimiento de la CPU (hasta en un 30% en aplicaciones de servidor).»

Fuente: https://www.intel.com/content/www/us/en/gaming/resources/hyper-threading.html

Básicamente consiste en dividir un core físico en dos cores virtuales y de esta forma maximizar el rendimiento del CPU.

vCPU’s

El concepto de vCPU es algo más abstracto ya que no hay una definición concreta, es normalmente aceptado que un vCPU equivale a un thread (hilo)  de un core y es así como los ofrecemos en Jonashosting al igual que otros proveedores Cloud como Amazon AWS, Linode o DigitalOcean en sus series Dedicated CPU o CPU Optimized.

Frecuencia de Reloj (Clock Speed)

Como si ya no fuera suficientemente complejo el tema también tenemos la frecuencia de reloj que en los antiguos procesadores está expresada en megahertz y los modelos recientes en GHz (billones de operaciones por segundo) así que básicamente un procesador de 3.2 GHz realiza 3.2 billones de operaciones por segundo, pero no todo es la frecuencia, por ejemplo un procesador de hace 5 años y de frecuencia de CPU 3.2 GHz puede ser fácilmente superado en rendimiento por un modelo reciente de menor frecuencia ya que cada nueva generación incluye avances que aumentan el rendimiento, por esta razón no tiene mucho sentido centrarnos en la frecuencia de reloj, salvo que estemos comparando procesadores de una misma familia.

Por último, no olvidar que muchos servidores soportan múltiples procesadores, por ejemplo nuestros nodos cloud utilizan Dual Xeon Scalable (dos procesadores por nodo) o AMD Epyc (un procesador por nodo) sin embargo ambos tienen aproximadamente el mismo rendimiento a pesar de que uno tiene el doble de procesadores que el otro debido a que ambos tienen el mismo número de cores en total.

Seleccionar el procesador correcto no es tarea fácil y a menudo el usuario tiende a confundirse haciendo demasiado énfasis en el número de cores o la frecuencia de los mismos sin darse cuenta de que podría estar adquiriendo un procesador lento y obsoleto.

Para seleccionar el procesador adecuado debemos tener en cuenta el uso que se le va a dar y no siempre más cores aumentan el rendimiento de una aplicación. En Jonashosting y debido a que nuestra meta es darle el mayor rendimiento posible a un precio razonable nos fijamos en el rendimiento por core de cada procesador, el precio y el número de cores por CPU, de esta forma es fácil hacer comparaciones entre cpus de diferentes fabricantes o incluso entre procesadores del mismo fabricante, pero diferentes gamas y/o modelos.

La mejor herramienta que conozco para comparar el rendimiento de múltiples cpus es https://www.cpubenchmark.net/ en donde encontrará la gran mayoría de los cpus y sus respectivas pruebas de rendimiento y un score general acerca del desempeño de cada servidor llamado «Average CPU Mark» si deseamos ver el rendimiento por core debemos prestar atención al valor «Single Thread Rating»

Veamos un caso práctico:

Vamos a comparar el procesador Intel Xeon X5670 6 cores/12 HT 2.93GHz vs Intel Xeon E3-1585L v5 @ 3.00GHz cores/8HT 

En teoría el procesador Intel Xeon X5670 con 6 cores y 12 threads y una respetable frecuencia de 2.9 GHz pareciera ser una opción más potente frente al E3-1585L v5 que cuenta con un poco más de frecuencia (2.9 GHz vs 3.00 GHz) pero la verdad es que el modelo E3-1585L v5 a pesar de tener menos cores supera con creces al rendimiento por ser varias generaciones más moderno que el Intel Xeon X5670

Note que he tomado dos procesadores obsoletos deliberadamente para resaltar las diferencias entre procesadores de diferentes generaciones.

Como seleccionar el Procesador correcto:

Principalmente depende del uso que se le va a dar, por ejemplo, para servidores de virtualización o hosting compartido más cores es mejor, sin embargo para un servidor dedicado de MySQL quizás funcione mejor con menos cores pero estos de mayor frecuencia.

Algunos aspectos que debes evitar a la hora de seleccionar procesadores para hosting ya sea virtual, dedicado o hosting compartido:

  • Procesadores para PC’s de escritorio: Estos CPU’s no están certificados para operar 24 x 7 y si el CPU es de PC de escritorio es bastante probable que los demás componentes (Tarjeta Madre, Memoria, Discos) también sean de nivel PC de escritorio lo que resta durabilidad y confiabilidad al servidor.
  • Procesadores obsoletos: La vida útil de un servidor es de alrededor de 5 años, es lo mismo que con un auto, funcionará como nuevo los primeros 5 años, pero el tiempo no perdona y las probabilidades de fallas aumentan considerablemente con el paso del tiempo. Aunque es relativamente raro ver fallas de CPU’s, si el mismo ha estado en funcionamiento continuo por más de 5 años también es bastante probable que los demás componentes tengan el mismo tiempo lo que les resta fiabilidad.
Acerca del Autor

Fundador Jonashosting CEO UNO Datacenters, Inc.

Leave a Reply

Your email address will not be published. Required fields are marked

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}