{'fraction_non_alphanumeric': 0.01482799525504152, 'fraction_numerical': 0.0, 'mean_word_length': 5.2481481481481485, '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': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Scenario-Based Execution Method for Massively Parallel Accelerators

The manycore architecture has become one of the choices in the acceleration method of massively parallel computation. It is an unavoidable option for the top supercomputers in the world in order to achieve the high performance computing applying accelerators such as the graphics processing unit (GPU). However such accelerators are equipped on the processing nodes where the CPU cores control the accelerators via the peripheral bus. Therefore, even if the accelerator implements a large amount of parallelism, the performance is inevitably degraded due to the data migration overheads for downloading the kernel program to the accelerator and transferring the I/O data consumed by the program. To avoid the overheads, it is important to pack many tasks in a single kernel and to invoke it for the smallest numbers of execution times of the kernel programs. However, it is very difficult to pack it because it is necessary to exchange the I/O data in recursive operations or among different computing contents. In order to address this problem, the kernel program must invoke many different contents of the program at a single execution of the kernel program. This paper proposes a novel execution mechanism for the accelerators that drastically improves the performance, called the scenario-based execution for the accelerators. It exploits the potential performance of the accelerators, and the application invokes all program contents on the accelerator side. This paper discusses the design and implementation of the scenario-based execution method, and also the performance aspect using a realistic application.