首页 | 本学科首页   官方微博 | 高级检索  
     


Automatic Skeleton-Driven Memory Affinity for Transactional Worklist Applications
Authors:Luís Fabrício Wanderley Góes  Christiane Pousa Ribeiro  Márcio Castro  Jean-François Méhaut  Murray Cole  Marcelo Cintra
Affiliation:1. PPGEE, GSDC Group, Pontifícia Universidade Católica de Minas Gerais, Belo Horizonte, Brazil
2. INRIA, CEA, LIG Laboratory, Grenoble University, Grenoble, France
3. School of Informatics, ICSA, CARD Group, University of Edinburgh, Edinburgh, UK
Abstract:Memory affinity has become a key element to achieve scalable performance on multi-core platforms. Mechanisms such as thread scheduling, page allocation and cache prefetching are commonly employed to enhance memory affinity which keeps data close to the cores that access it. In particular, software transactional memory (STM) applications exhibit irregular memory access behavior that makes harder to determine which and when data will be needed by each core. Additionally, existing STM runtime systems are decoupled from issues such as thread and memory management. In this paper, we thus propose a skeleton-driven mechanism to improve memory affinity on STM applications that fit the worklist pattern employing a two-level approach. First, it addresses memory affinity in the DRAM level by automatic selecting page allocation policies. Then it employs data prefetching helper threads to improve affinity in the cache level. It relies on a skeleton framework to exploit the application pattern in order to provide automatic memory page allocation and cache prefetching. Our experimental results on the STAMP benchmark suite show that our proposed mechanism can achieve performance improvements of up to 46 %, with an average of 11 %, over a baseline version on two NUMA multi-core machines.
Keywords:
本文献已被 SpringerLink 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号