{'fraction_non_alphanumeric': 0.020491803278688523, 'fraction_numerical': 0.0010245901639344263, 'mean_word_length': 5.691780821917808, '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}}
Efficient distributed simulation through dynamic load balancing

With recent advances in parallel computation, distributed simulation has become a viable way of dealing with time-consuming simulations. For distributed simulations to run efficiently, care must be taken in assigning the tasks (work) in the simulated system to the available physical processors in the computer system. An inefficient assignment can result in excessive communication times between processors and unfavorable load conditions. This leads to long run times, possibly giving performance worse than that with a uniprocessor sequential event-list implementation. This paper establishes the feasibility, and in some cases the necessity, of using dynamic task allocation (rather than a-priori static allocation) in distributed simulation. A dynamic reallocation strategy is developed, and experiments on an iPSC/2 Hypercube indicate that significant improvements in run time can be achieved at low cost.