Anatomía de np.add: del bucle SIMD en C al intérprete de Python

Este artículo descompone paso a paso la ejecución de np.add(a, b) sobre dos arreglos float64 en NumPy 2.5.2, recorriendo el código fuente real desde la llamada en Python hasta el núcleo SIMD que realiza la suma en C. np.add no es una función de Python ordinaria, sino una instancia del tipo C numpy.u

Polinomios para suavizar trayectorias de movimiento

Las trayectorias de vehículos, robots e impresoras 3D no solo están definidas por la posición: también dependen de la velocidad, la aceleración y sus cambios sucesivos. El jerk, tercera derivada de la posición, mide la rapidez con la que varía la aceleración; valores elevados pueden producir vibraci

Construimos sin querer un compilador LLVM para JAX

El equipo de PennyLane, una biblioteca de software cuántico, estaba desarrollando Catalyst, un compilador cuántico basado en MLIR, cuando descubrió que su infraestructura podía ejecutar código JAX clásico sin necesidad de instrucciones cuánticas. El decorador @qjit acepta funciones JAX puras con Num

Cálculo de la suma de los cubos mediante tablas de diferencias

En un artículo publicado en su blog, el ingeniero y divulgador Dr. Drang describe un método alternativo para demostrar la fórmula de la suma de los primeros n cubos. La fórmula, que reduce Σk³ a [n(n+1)/2]², suele presentarse en docencia a partir de identidades algebraicas, pero el autor busca un ca

Huellas de conectividad extendida implementadas en APL

Las huellas de conectividad extendida (ECFP, por sus siglas en inglés) son uno de los descriptores moleculares más empleados en quimioinformática. Se trata de un tipo de huella topológica diseñada para representar la estructura bidimensional de un compuesto mediante un vector de bits, y que la comun

Elige bytes, no FLOPs: cómo reescribir el camino caliente de un bootstrap

El equipo de tsbootstrap detectó, en una comparativa frente a la librería econométrica arch, que su motor de bootstrap por bloques era varias veces más lento en cargas realistas. El problema no era el intérprete: era estructural. La implementación previa materializaba todas las réplicas en un único

Función de activación Softmax: qué es y cómo se implementa

La función Softmax es una de las piezas fundamentales en las redes neuronales modernas, especialmente en tareas de clasificación multiclase. Se trata de una función matemática no lineal que convierte un vector de puntuaciones brutas, denominadas logits y que pueden tomar cualquier valor real positiv

¿Dividir entre 255 o entre 256 al normalizar valores RGB?

En el procesamiento de imágenes, al convertir valores enteros de 8 bits a coma flotante surge una duda recurrente: ¿conviene dividir entre 255 o entre 256 con un sesgo de 0,5? El artículo examina ambas fórmulas — `x/255` y `(x+0.5)/256` — y compara sus consecuencias prácticas. La fórmula estándar `

NumExpr multiplica velocidad en cálculos NumPy con optimización multitarea

La biblioteca NumExpr, desarrollada por David M. Cooke, Francesc Alted y otros bajo la dirección del mantenedor Francesc Alted, ofrece aceleración significativa para cálculos numéricos con arrays de NumPy en Python. La herramienta evita asignar memoria para resultados intermedios, lo que mejora el u

Álgebra lineal para programadores: el enfoque code-first

Think Linear Algebra es un libro de introducción al álgebra lineal desarrollado por Allen B. Downey, quien es conocido por su enfoque pedagógico práctico en la enseñanza de computación. A diferencia de los textos tradicionales de matemáticas, este libro adopta un enfoque «code-first» (primero el cód

Modelos de lenguaje: técnica reduce tamaño sin perder calidad

Investigadores han desarrollado una nueva técnica para comprimir incrustaciones (embeddings) de modelos de lenguaje, mejorando significativamente la eficiencia sin sacrificar la calidad de la recuperación de información. La técnica, denominada 'poly-autoencoder', combina un codificador PCA (Principa

FFT: El algoritmo que acelera el análisis de datos

La Transformada Rápida de Fourier (FFT) es un algoritmo fundamental en el procesamiento de señales y el análisis de datos, crucial para tareas como el análisis del espectro de una señal o la simplificación de cálculos complejos. Este artículo explica cómo funciona el algoritmo FFT de Cooley-Tukey, q

NumKong: Biblioteca Numérica de Alto Rendimiento

Ash Vardanian ha anunciado el relanzamiento de su proyecto SimSIMD bajo el nuevo nombre NumKong, una biblioteca de computación numérica de alto rendimiento. NumKong abarca aproximadamente 200.000 líneas de código y documentación en siete lenguajes de programación, ofreciendo una colección comparable

PyPy: advertencia por falta de desarrollo activo

Un cambio reciente en el proyecto `uv` de Astral-Sh incluye una advertencia sobre el estado de desarrollo de PyPy. La advertencia, aprobada el 22 de enero de 2026, señala que PyPy parece no estar siendo desarrollado activamente y está siendo abandonado incluso por NumPy, como se evidencia en un prob

Búsqueda eficiente de trillones de vectores: un desafío

Este artículo explora el desafío de realizar búsquedas de similitud vectorial a gran escala, específicamente con 3 mil millones de vectores. El problema surge al intentar encontrar elementos semánticamente similares, una técnica crucial en aplicaciones como búsqueda, recomendaciones y recuperación g