Software y hardware: redescubriendo la 'simpatía mecánica'

Un artículo de martinfowler.com explora el concepto de 'simpatía mecánica' en el desarrollo de software, una práctica que busca optimizar el rendimiento al considerar las características y limitaciones del hardware subyacente. Inspirado en un principio de la Fórmula 1, la simpatía mecánica implica c

Rust: Compartir datos mutables de forma segura

Este artículo de Alice Ryhl explica cómo compartir estados mutables en Rust, un concepto crucial para aplicaciones concurrentes, tanto síncronas como asíncronas. El problema fundamental es permitir que múltiples hilos (threads) modifiquen el mismo dato de forma segura, evitando condiciones de carrer

Python sin GIL: ¿Más velocidad y eficiencia?

El lenguaje de programación Python es ampliamente utilizado, pero sufre una limitación conocida como el Global Interpreter Lock (GIL). El GIL, esencialmente, permite que solo un hilo de ejecución acceda al intérprete de Python a la vez, incluso en sistemas con múltiples núcleos de procesador. Esto l

C++17: Optimiza el acceso concurrente con shared_mutex

Este artículo explica `std::shared_mutex`, una herramienta valiosa introducida en C++17 que optimiza el acceso concurrente a datos compartidos, especialmente en escenarios de lectura intensiva. Comienza con un ejemplo básico: un contador que se incrementa y se lee por múltiples hilos, utilizando `st

vdb: Biblioteca C simplifica bases de datos vectoriales

Un desarrollador ha presentado 'vdb', una nueva biblioteca en C de código abierto y de un solo archivo (header-only) diseñada para simplificar el desarrollo de bases de datos vectoriales. La biblioteca, disponible en GitHub, permite almacenar y buscar incrustaciones vectoriales de alta dimensión, of