Connect with us

BUSCAR EN SINALOAHOY

Tecnología

Python es casi tan rápido como Go y C++

El problema de las N damas, que es una generalización de clásico problema del ajedrez, de poner 8 reinas en un tablero sin que se ataquen mutuamente, se resuelve muchas veces recursivamente, lo que significa que se van poniendo las damas en el tablero.

Si de pronto una dama ya no se puede poner, se va un paso atrás, se cambia de posición la última dama puesta y se vuelve a intentar poner la siguiente dama. Esto es un proceso de recursión y backtrack y resuelve el problema para tableros de NxN y N damas.

¿Y si usamos Python?

Un programa que resuelva esto en Python, Go y C++ demuestra que Python es lento, pero hay que decir que Python incluye la verificación de errores y eso hace que sea más lento.

Pero si se usa Numba, un compilador de Python, aunque no destrona a C++, quedando Go en segundo sitio, por un 6% del tiempo y Numba Python en tercero, con apenas 12% más lento.

Los investigadores argumentan que Numba Python es suficientemente rápido para ser usado en el contexto de la investigación, por su velocidad para generar prototipos. Go es también atractivo, pero se argumenta que tiene tantas características que lo hace menos fácil de usar cuando se está experimentando con código.

Es interesante que Julia, que también está en el grupo de lenguajes «rápidos», tiene el potencial de ser una alternativa atractiva a Numba Python. Desafortunadamente, hay algunos obstáculos para su adopción: Por una parte es un lenguaje relativamente nuevo y muchas de sus características son aún experimentales. Por otra parte, el número de bibliotecas es limitado.

Python, por otra parte, tiene un sinfín de bibliotecas de desarrollo, incluso algunas para aprendizaje profundo, las cuales son básicas en la investigación de hoy.

Además, tiene características de diseño que lo diferencian de los lenguajes más populares, como arreglos de un sólo índice, entre otras. Como sea, parece nada fácil migrar de un lenguaje establecido como Python a lo nuevo que podría tener Julia.

Una de las 72 soluciones para un tablero de 8×8

Para uso científico, el equipo de pruebas hizo comparaciones sobre las implementaciones en paralelo y con Numba las cosas fueron más fáciles, incluso aunque el uso de Python estándar no pudiese manejarse de esta manera. Se usaron dos forma de paralelizar Python, Para y Pool, y se compararon contra el código original de Numba, Go y C++. Numba en este caso fue tan bueno como Go y C++, aunque este último sigue siendo ligeramente más rápido.

Python es quizás el mejor lenguaje para aprender a programar

La conclusión de reporte es: Usamos el problema conocido de las 8 reinas como una forma de probar que una vez compilando con Numba, Python puede ser tan competitivo como C++ y Go en términos de velocidad de ejecución para poder hacer prototipos rápidos.

Esto resultó cierto para programas paralelos y secuenciales. En todos los casos, se puede desarrollar en Python estándar para luego de identificar los cuellos de botella, usar Numba para quitarlos».

La entrada Python es casi tan rápido como Go y C++ se publicó primero en Unocero: Especialistas en tecnología y estilo de vida digital.

Últimas noticias

Mazatlán

El candidato le señaló al gobierno su irresponsabilidad de estar arrojando las aguas negras sin tratamiento al mar

Política

Sheinbaum asegura que Afores no se tocarán, Xóchitl promueve el nearshoring y AMLO defiende la reforma de pensiones

Farandula

Fofo Márquez, conocido por su actitud desafiante y polémica en redes sociales, ahora se enfrenta a un giro dramático en su vida al ser...

Política

Durante su gira, López Obrador se despedirá y expresará su gratitud a todos los mexicanos que lo apoyaron durante su mandato

Culiacán

Un hombre adulto resultó lesionado y fue atendido por elementos de la Policía Municipal.

Internacionales

Esta mañana, el alcalde Jorge Maldonado, fue víctima de disparos que ocasionaron su deceso.

Suscríbete y recibe noticias

Tendencia

Internacionales

Misiles israelíes impactan en Irán este jueves

Nacionales

La empresa anuncia la condonación de intereses moratorios en créditos afectados.

Culiacán

Testigos del incidente prestaron auxilio al influencer y reportaron los hechos a los servicios de emergencia.

Mazatlán

Eduin Caz se ve envuelto en una nueva controversia al discutir con una banda en Mazatlán.

Farandula

Narcomanta advierte a Fuerza Regida y la agrupación cancela su presentación.

Nacionales

El epicentro del temblor se registró a 70 kilómetros de Loreto, Baja California Sur

Ahome

El Centro de Control y Bienestar Animal de Ahome invita a esterilizar y adoptar mascotas de manera gratuita.

Internacionales

La meningitis es una inflamación en las capas que cubren el cerebro y la médula espinal.