{'fraction_non_alphanumeric': 0.010843373493975903, 'fraction_numerical': 0.0012048192771084338, 'mean_word_length': 6.163793103448276, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Adaptive Concurrency Control for Transactional Memory

Transactional applications may exhibit fluctuating amounts of contention during execution. Excessive numbers of threads executing transactions can produce phases with a high transaction abort ratio. while few threads executing transactions will under-perform in phases with low contention. This paper presents the first application of adaptive concurrency control to TM in order to dynamically adjust the number of threads executing transactions concurrently. Four adaptive schemes are implemented in DSTM2, a software TM implementation, and evaluated against a TM application with complex and realistic behavior. Adaptive concurrency control complements existing contention management policies that capture which transaction should be aborted when two transactions conflict.