{'fraction_non_alphanumeric': 0.008356545961002786, 'fraction_numerical': 0.0, 'mean_word_length': 5.822784810126582, '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}}
How to Balance the Load on Heterogeneous Clusters

The problem of computing a large set of different tasks on a set of heterogeneous resources connected by a network is very common nowadays in very different environments and load balancing is indispensable for achieving high performance and high throughput in systems such as clusters. Cluster heterogeneity increases the difficulty of balancing the load across the system nodes and, although the relationship between heterogeneity and load balancing is difficult to describe analytically, in this paper different models and performance metrics are proposed to describe heterogeneous cluster behavior and to perform an exhaustive analysis of the effects of heterogeneity on load balancing algorithm performance. This analysis allows us to propose efficient solutions capable of dealing with heterogeneity for all the load balancing algorithm stages. Furthermore, a load balancing algorithm has been implemented following these solutions to demonstrate, with experimental results, its efficiency on real heterogeneous clusters.