{'fraction_non_alphanumeric': 0.012048192771084338, 'fraction_numerical': 0.0, 'mean_word_length': 5.456310679611651, '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}}
Synchronization elimination in the deposit model

The deposit message passing model is an effective target for communication code generated by data parallel compilers. This model separates data transfer from control, so the deposit model requires additional control communication to ensure that the memory on the remote node is ready to be overwritten. This control communication is generally provided by barrier synchronization. In some cases, the barrier is redundant and the synchronization can be piggy-backed on previous communication steps. This paper presents a data flow algorithm that determines which control barriers are redundant and can be eliminated.