{'fraction_non_alphanumeric': 0.021476510067114093, 'fraction_numerical': 0.0, 'mean_word_length': 5.781818181818182, '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}}
Distributed Asynchronous Algorithms

We consider iterative algorithms of the form x:= f(x), executed by a distributed network of processors. We first discuss a few possibilities for synchronous execution. We then consider asynchronous implementations whereby each processor iterates on a different component of x, at its own pace, using the most recently received (but possibly outdated) information on the remaining components of x. While certain algorithms may fail to converge when implemented asynchronously, a large number of positive convergence results is available. We classify asynchronous algorithms into three main categories, depending on the amount of asynchroniam they can tolerate and survey the corresponding convergence results.