En arquitectura de computadoras , el paralelismo a nivel de memoria ( MLP ) es la capacidad de tener pendientes múltiples operaciones de memoria , en particular errores de caché o errores de búfer de traducción paralela (TLB), al mismo tiempo.
En un solo procesador, el MLP puede considerarse una forma de paralelismo a nivel de instrucción (ILP). Sin embargo, el ILP a menudo se confunde con superescalar , la capacidad de ejecutar más de una instrucción al mismo tiempo, por ejemplo, un procesador como el Intel Pentium Pro es superescalar de cinco vías, con la capacidad de comenzar a ejecutar cinco microinstrucciones diferentes en un ciclo determinado, pero puede manejar cuatro errores de caché diferentes para hasta 20 microinstrucciones de carga diferentes en cualquier momento.
Es posible tener una máquina que no sea superescalar pero que, sin embargo, tenga un MLP alto.
Se podría argumentar que una máquina que no tiene ILP, que no es superescalar, que ejecuta una instrucción a la vez de manera no segmentada, pero que realiza precarga de hardware (no precarga de instrucciones de software) exhibe MLP (debido a múltiples precargas pendientes) pero no ILP. Esto se debe a que hay múltiples operaciones de memoria pendientes, pero no instrucciones . Las instrucciones a menudo se confunden con las operaciones.
Además, se puede decir que los sistemas informáticos multiprocesador y multihilo presentan MLP e ILP debido al paralelismo, pero no ILP y MLP intrahilo, de un solo proceso. Sin embargo, a menudo restringimos los términos MLP e ILP para referirnos a la extracción de dicho paralelismo de lo que parece ser un código de un solo hilo no paralelo.
{{cite conference}}
: Enlace externo en |postscript=
( ayuda )Mantenimiento de CS1: posdata ( enlace )