{'fraction_non_alphanumeric': 0.01507537688442211, 'fraction_numerical': 0.0, 'mean_word_length': 5.425806451612903, '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}}
Tradeoffs for task parallelization in distributed optimization

We consider the problem of solving multiple optimization tasks on the same data in a distributed setting. We focus on consensus-based and incremental optimization strategies. Consensus-based distributed optimizers converge in fewer iterations, but the multiple tasks must be run serially. Incremental optimization algorithms, where the iterate is passed from node to node, have slower convergence guarantees but they can be parallelized to work on multiple tasks concurrently. When there are many tasks to solve, this approach can suffer from queuing delay. We provide an analysis of this delay which suggests that incremental algorithms may have superior performance for a moderate number of tasks. The main factor that controls this effect is the communication time. We show experimentally that there is a regime in which parallel instances of incremental algorithms can outperform serial instances of consensus-based algorithms.