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

Política

El presidente Andrés Manuel López Obrador firmó el decreto histórico que crea el Fondo de Pensiones del Bienestar este 1 de mayo. A partir...

Nacionales

La candidata presidencial morenista, Claudia Sheinbaum, respeta la decisión de Jorge Álvarez Máynez de no declinar a favor de ella y destaca la importancia...

Internacionales

La magnitud de la destrucción es inmensa y sin precedentes, con un 72% de los edificios residenciales destruidos total o parcialmente y aproximadamente 37...

Nacionales

Xóchitl Gálvez y Cecilia Flores: ¿Montaje o realidad? La activista denunció un presunto crematorio clandestino en la Ciudad de México, generando debate

Culiacán

Se permitirá el paso de 100 tráileres en cada dirección en la maxipista Culiacán-Mazatlán.

Culiacán

Dos hombres desconocidos realizaron destrozos al interior de la parroquia del Espíritu Santo e Inmaculado Corazón de la Virgen María.

Suscríbete y recibe noticias

Tendencia

Concordia

Operativo de vigilancia en la Guasima por supuesto enfrentamiento entre grupos delictivos en Concordia.

Sinaloa

Elementos tanto del Ejército, Guardia Nacional, así como de la Policía Estatal, ya se movilizan al lugar de los hechos

Sinaloa

Los usuarios de energía eléctrica en Sinaloa están siendo aconsejados por la CFE.

Nacionales

Triste noticia en el mundo del humor: el comediante 'Doña Evelia' falleció tras complicaciones de salud.

Nacionales

El presidente Andrés Manuel López Obrador firma el decreto para la creación del Fondo de Pensiones del Bienestar en México

Nacionales

Video muestra agresión a candidata durante evento en mercado.

Mazatlán

Neto Coppel sorprende cantando una famosa canción del regional mexicano acompañado de la banda Brisa Mazatleca.

Deportes

Julio César Chávez Jr. desea que Jaime Munguía sorprenda y derrote a Saúl ‘Canelo’ Álvarez en la pelea por el campeonato de peso supermediano