Font Size: a A A

The Implementation Of Memory Access Analysis System For Multithreaded Programs On NUMA

Posted on:2017-03-17Degree:MasterType:Thesis
Country:ChinaCandidate:D ZengFull Text:PDF
GTID:2348330503489883Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
Non-uniform memory access(NUMA) is one of the main architectures of today's highperformance server. The key feature of NUMA is the non-uniformity of access latency: the access latency to the local memory is much shorter than remote memory. Access to local memory is not only faster but also less likely to cause contention on interconnect links and memory controller. Multithreaded programs may experience high latency without careful placement of data and thread. So it is meaningful to present an Optimization mechanism.The new mechanism takes variables as targets, uses the average access latency of variables as metrics to identify NUMA problem. When problem is detected, it finds out the variable suffered most from NUMA problems through average access latency and access ratio and provides the thread access pattern of the variable. The analysis system based on the mechanism uses hardware sampling mechanism to sample instructions during the execution, then calculates and sorts access latency of each variable, and presents access patterns of multiple threads accessing the target variable to help ameliorating NUMA problems. The data-centric mechanism not only precisely detects NUMA problem, but also analyzes the multithread access pattern to provide optimizing strategy.Experiment results show that the mechanism can identify various kinds of NUMA problem, and detect various kinds of access pattern of multithread accessing data. Using corresponding optimization strategies, the performance improvement can be up to 51.92%.
Keywords/Search Tags:NUMA, Multithread, Memory Access Analysis, Thread Access Pattern
PDF Full Text Request
Related items