IEEE Transactions on Computers · 2011 · 10 citations · 55 references
EngineeringLocality-sensitive SignaturesComputer ArchitectureTransaction ProcessingMemory Model (Programming)Software AnalysisFormal VerificationHardware SecurityParallel ComputingConcurrent ProgrammingComputer EngineeringSpatial LocalityHash FunctionComputer ScienceData SecurityCryptographyProgram AnalysisFormal MethodsParallel ProgrammingConcurrent Data StructureGems SimulatorGarbage CollectionSystem SoftwareTransactional Memory
Transactional Memory (TM) is an alternative to conventional multithreaded programming to ease the writing of concurrent programs. In the context of unbounded TM, concurrent threads may use hardware signatures to record all the memory addresses issued inside a transaction to detect conflicts. Signatures are usually implemented as per-thread fixed hardware Bloom filters that summarize a very large amount of read and write memory addresses at the cost of false conflicts (detection of nonexisting conflicts). In this paper, to reduce the probability of false conflicts, a novel signature design that exploits spatial locality is proposed. The design is based on new hash function mappings, so that nearby located addresses share some bits inserted in the filters. This is favorable particularly for large transactions that usually exhibit some amount of spatial locality. Besides, its implementation does not require extra hardware. The proposed signature was experimentally evaluated using the GEMS simulator and all the codes of the STAMP benchmark suite. In most cases, the results show significant improvement, particularly in the codes that involve long-running, large-data transactions.
55
Space/time trade-offs in hash coding with allowable errors
Burton H. Bloom · Communications of the ACM · 1970 · 7.4K citations · Full text
Piotr Indyk, Rajeev Motwani · 1998 · 4.1K citations · Full text
Chi-Keung Luk, Robert Cohn, Robert Muth et al. · ACM SIGPLAN Notices · 2005 · 3.2K citations
Engineering, Computer Architecture, Software Engineering +16
Chi-Keung Luk, Robert Cohn, Robert Muth et al. · 2005 · 2.3K citations
Engineering, Computer Architecture, Software Engineering +16