Font Size: a A A

Research On Key Techniques For Numa-aware Transactional Memory

Posted on:2012-12-23Degree:DoctorType:Dissertation
Country:ChinaCandidate:R B WangFull Text:PDF
GTID:1118330341451720Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Most Transactional Memory (TM) research had focused on multi-core processorsand SMP systems; limited research had been aimed at the clusters, leaving the area ofNUMA (Non-Uniform Memory Access) systems unexplored. The existing TM imple-mentations made significant performance degradation on NUMA systems because theyignored the slower remote memory access. To solve this problem, the dissertation pro-posed a NUMA-aware transactional memory system. By reducing the remote memoryaccess and the transaction's abort rate, the results showed that the NUMA-aware strate-gies presented good practical TM performance on NUMA systems.Parallel programming had been employed for many years, mainly in high perfor-mance computing. With the development of multi-core and many-core processors, desk-top developers started using parallel programs to exploit processor cores. Most parallelprogramsusedlocksassynchronizationmechanism, butitwasnoteasytoavoiddeadlock,priority inversion, lock convoying, etc. Given the above problems, it was not surprisingto see a large body of research aimed at making parallel programming easier. One of themost appealing solutions was Transactional Memory. TM is a synchronization primitiveprovides atomic and isolated execution for regions of code. Developers could simply usethe atomic primitive to define a critical section, and the data race inside the critical sectionwould be resolved automatically. TM was originally designed for shared memory systemsuch as SMP systems. With the development of Direct Connect Architecture, the proces-sor was optionally directly connected to other CPUs through a proprietary extension run-ningontopofadditionalnativelyimplementedHyperTransportinterfaceallowingsupportof a cache-coherent NUMA (CC-NUMA) multi-CPU memory access protocol. In otherwords, the modern SMP systems were NUMA now. Under NUMA, a processor couldaccess its own local memory faster than non-local memory, which was totally differentfrom SMP. The performance of existing TM implementations running on NUMA systemwas poor, slow non-local memory access latency might be an issue.Currently, there was no specific TM designed for NUMA system, the dissertationpresented a new research idea for transactional memory. The main contributions werelisted as follows: (1) The NUMA simulator and the memory access pattern analysis for TransactionalMemory. To efficiently analyze the performance problem of running transactional mem-ory on NUMA system, the dissertation proposed a NUMA simulator. The simulator wasbased on Simics and GEMS. To allow the operating system to identify the NUMA hard-ware and locality information, Simics should simulate several ACPI forms such as SRATand SLIT. All the precise hardware operation latencies were provided by GEMS. Withthe lack of support of NUMA architecture, a NUMA-behavior module was added to thesystem. Three typical transactional memory systems were chosen to analyze the memoryaccess pattern on NUMA system. The conclusion was, remote memory latency and thetransaction failure rate were two of the most important reason for the poor performance.(2) The hierarchical conflict detection. To reduce the remote memory access, a hier-archical conflict detection method was proposed. The NUMA system should be separatedinto slow part and fast part according to the different memory access latency. The fast partshould use the lazy policy to increase the parallelism; the slow part should use the eagerpolicy to reduce the remote memory access.(3) The conflict prevention method. The traditional TM design used to maximize thenumber of running transactions to improve performance. But the design was not suitablefor NUMA architecture. A conflict prevention method was used to deal with the prob-lem. The prevention method was scheduled before the transaction's starting. It used aforecasting algorithm to predict the probability of this transaction's future conflict. Thetransaction would be suspended if it has a large potential for conflict with other runningtransactions.(4)TheNUMA-awarecontentionmanager. TomakethecontentionmanagerNUMA-aware, two contention management algorithm were proposed. To reduce the expensivenetwork communication, the contention manager should use local information in order toreduce the remote memory access. The algorithms presented good practical TM perfor-mance on NUMA systems.
Keywords/Search Tags:Transactional Memory, NUMA, Conflict Detection, ConflictPrevention
PDF Full Text Request
Related items