Reseñas

Comparativa de rendimiento M1 frente Ryzen 7 para Python

Algo que siempre me ha preocupado en el blog es obtener el mejor rendimiento posible de Python y del resto de plataformas con las que trabajo. Reducir, aunque sea un poco, el tiempo de entrenamiento de los modelos o análisis de datos es siempre positivo. Así se puede dedicar más tiempo a analizar los resultados y menos a esperar por estos. Para lo que el procesador es algo importante. Por eso me he planteado comparar el rendimiento de mis equipos de trabajo a la hora de ejecutar el mismo código Python, un M1 frente a un Ryzen 7.

* En este artículo, nuestras recomendaciones son el resultado una evaluación rigurosa e independiente. Algunos enlaces incluidos en el texto son enlaces de afiliados, lo que significa que podemos recibir una comisión si decides realizar una compra a través de ellos. Esta comisión no afecta de ninguna manera a nuestra selección de productos ni influye en nuestra opinión sobre los mismos.

Medir el rendimiento con la sucesión de Fibonacci

El rendimiento de Python se puede medir por ejemplo con la sucesión de Fibonacci. Una función recursiva que es difícil de calcular y por lo tanto se puede apreciar fácilmente las diferencias entre dos configuraciones. Por eso la he utilizado en ocasiones anteriores, para comprobar las mejoras que ofrece compilar el código con Cython y para comparar Julia con Python.

Para comparar el rendimiento de un M1 frente a un Ryzen 7 con esta función se ejecutó en ambas máquinas el siguiente código.

import timeit

def fibonacci(n):
    if n < 2:
        return n
    else:
        return fibonacci(n-1) + fibonacci(n-2)
    
timeit.timeit("fibonacci(30)", "from __main__ import fibonacci", number=30)

Versión de Python usada en la comparativa

En ambos casos se ha usado el Python 3.9 que se incluye en la última versión de Anaconda. Empleando la versión compilada para M1 en el Mac y la versión 64 bits en Windows.

Los procesadores en comparación

Tanto M1 como Ryzen 7 son unas marcas que hacen referencia a diferentes modelos de procesadores por lo que es importante conocer lo que se usan para la comparativa. En el caso de M1 se usa un modelo M1 Pro con 10 núcleos. Por otro lado, el modelo del Ryzen 7 es el 5700 U con ocho núcleos, un modelo para portátil de quinta generación. Ambos procesadores fueron lanzados en 2021.Se puede encontrar más información sobre el procesador en el análisis del equipo usado.

Resultado de la comparativa del M1 frente Ryzen 7

Los resultados que se han obtenido para cada uno de los procesadores son los siguientes:

  • M1 Pro: 7,51 segundos
  • Ryzen 7: 9,04 segundos

Lo que indica que el M1 es aproximadamente un 19,5% más rápido que el Ryzen 7. Por lo que el M1 se puede considerar un buen equipo para ejecutar Python, aunque es necesario realizar comparativas más en profundidad.

Nótese que esta misma prueba se realizó en el 2019 con un i5 que requirió de 14 segundos para obtener los mismos resultados, prácticamente el doble del M1. Por lo que se puede apreciar un aumento considerable de rendimiento en ambos casos, aunque también puede influir que la versión de Python no sea la misma.

Conclusiones

En esta pequeña prueba se ha visto como el rendimiento de un procesador M1 es ligeramente mejor que un Ryzen 7 para ejecutar código Python. Una diferencia que puede ser importante a la hora de realizar tareas pesadas. Aunque, también hay que tener en cuenta la diferencia de precio que existe actualmente entre dos equipos con estos procesadores.

Imagen de günter en Pixabay

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

Analytics Lane lanza la versión 1.4 del laboratorio con nuevas herramientas de conversión y modelos avanzados de CLV

Seguimos ampliando el laboratorio de Analytics Lane con el lanzamiento de la versión 1.4, que…

4 días ago

Lanzamos el video de ScoreFlow: crea scorecards de crédito de forma ágil y sin IT

En Analytics Lane seguimos apostando por desarrollar herramientas que simplifiquen el trabajo de analistas y…

6 días ago

Data Leakage en Credit Scoring: El Error que Invalida tu Modelo

Imagina que construyes un scorecard con un Gini de 0,85. Un resultado extraordinario, muy por…

7 días ago

Analytics Lane lanza ScoreFlow, un SaaS para construir y desplegar scorecards de crédito

En Analytics Lane seguimos evolucionando nuestras herramientas y damos un paso más con el lanzamiento…

2 semanas ago

This website uses cookies.