El paralelismo a nivel de memoria ( MLP ) es un término en la arquitectura informática que se refiere a la capacidad de tener múltiples operaciones de memoria pendientes , en particular pérdidas de caché o errores de búfer de búsqueda de traducción (TLB), al mismo tiempo.
En un solo procesador, MLP puede considerarse una forma de paralelismo a nivel de instrucción (ILP). Sin embargo, ILP a menudo se combina 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 dado. , pero puede manejar cuatro fallos 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.
Podría decirse que una máquina que no tiene ILP, que no es superescalar, que ejecuta una instrucción a la vez de una manera no canalizada, pero que realiza la captación previa de hardware (no la captación previa de nivel de instrucción de software) exhibe MLP (debido a múltiples captaciones previas pendientes) pero no ILP. Esto se debe a que hay varias operaciones de memoria pendientes, pero no instrucciones . Las instrucciones a menudo se combinan con operaciones.
Además, se puede decir que los sistemas informáticos multiprocesador y multiproceso exhiben MLP e ILP debido al paralelismo, pero no intraproceso, proceso único, ILP y MLP. Sin embargo, a menudo restringimos los términos MLP e ILP para referirnos a extraer tal paralelismo de lo que parece ser un código de subproceso único no paralelo.
Ver también
Referencias
- Glew, A. (1998). "MLP sí! ILP no!". ASPLOS Wild and Crazy Idea Session '98 . Ideas locas y locas (WACI) I. ASPLOS VIII. ( resumen / diapositivas )CS1 maint: posdata ( enlace )
- Ronen, R .; Mendelson, A .; Lai, K .; Shih-Lien Lu; Pollack, F .; Shen, JP (2001). "Próximos retos en microarquitectura y arquitectura". Proc. IEEE . 89 (3): 325–340. CiteSeerX 10.1.1.136.5349 . doi : 10.1109 / 5.915377 .
- Zhou, H .; Conte, TM (2003). "Mejora del paralelismo de nivel de memoria a través de la predicción de valor sin recuperación". Actas de la 17ª conferencia internacional anual sobre supercomputación . ICS '03. págs. 326–335. CiteSeerX 10.1.1.14.4405 . doi : 10.1145 / 782814.782859 . ISBN 1-58113-733-8.
- Yuan Chou; Fahs, B .; Abraham, S. (2004). "Optimizaciones de microarquitectura para aprovechar el paralelismo a nivel de memoria". Actas. 31º Simposio Internacional Anual de Arquitectura de Computadoras, 2004 . ISCA '04. págs. 76–87. CiteSeerX 10.1.1.534.6032 . doi : 10.1109 / ISCA.2004.1310765 . ISBN 0-7695-2143-6.
- Qureshi, MK; Lynch, DN; Mutlu, O .; Patt, YN (2006). "Un caso para el reemplazo de caché compatible con MLP". 33º Simposio Internacional de Arquitectura de Computadores . ISCA '06. págs. 167-178. CiteSeerX 10.1.1.94.4663 . doi : 10.1109 / ISCA.2006.5 . ISBN 0-7695-2608-X.
- Van Craeynest, K .; Eyerman, S .; Eeckhout, L. (2009). "Subprocesos Runahead con reconocimiento de MLP en un procesador de subprocesos múltiples simultáneos". Arquitecturas y compiladores integrados de alto rendimiento . HiPEAC 2009. LNCS . 5409 . págs. 110-124. CiteSeerX 10.1.1.214.3261 . doi : 10.1007 / 978-3-540-92990-1_10 . ISBN 978-3-540-92989-5.