📘 TBB (Intel Threading Building Blocks) para C++: guía completa
oneAPI Threading Building Blocks (oneTBB) es una biblioteca multiplataforma de C++ desarrollada por Intel para simplificar la programación paralela. Proporciona abstracciones de alto nivel que permiten a los desarrolladores aprovechar al máximo los procesadores multinúcleo sin tener que lidiar con los detalles de bajo nivel de la gestión de hilos, la sincronización y la planificación de tareas.
¿Por qué usar TBB? En el mundo actual, el rendimiento de los procesadores ya no aumenta gracias a la frecuencia de reloj, sino al número de núcleos. Para que un programa sea más rápido en un procesador multinúcleo, es necesario paralelizarlo. Gestionar los hilos manualmente (con std::thread) es complejo, propenso a errores (condiciones de carrera, interbloqueos) y no escala bien. TBB resuelve estos problemas ofreciendo:
- Planificación automática de tareas — la biblioteca distribuye el trabajo entre los núcleos disponibles utilizando el algoritmo «work stealing» (robo de trabajo).
- Contenedores paralelos seguros —
concurrent_vector,concurrent_queuey otros, que