{'fraction_non_alphanumeric': 0.03659574468085106, 'fraction_numerical': 0.02127659574468085, 'mean_word_length': 5.569832402234637, '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}}
Parallelizing and Optimizing H.264 on Synchronous Data Triggered Architecture

Synchronous data triggered architecture (SDTA) is advantaged with high-performance, flexible scalability, low-cost communication between processor elements. With the prevalence of multimedia nowadays, it is significant to parallelize and optimize the implementation of OpenMAX DL's video component with SDTA support. H.264 is the core of the video part. In this paper, we propose several optimization techniques for H.264. There are loop unrolling, primitives and vectorization, dependences elimination, batch processing and revision, computing direction transformation, load/store acceleration. With these techniques, we have parallelized all the H.264 APIs, and two representative APIs gain speedups of 5.6, and 6.5 compared to the original sequential ones. Then we propose addition hardware for clip operations. With this hardware, the test benches reduced execution time by 18%, and 38%, respectively, and the speedups are 6.7, and 10.3. We believe that these techniques are especially beneficial to multimedia applications, even other applications on synchronous data triggered architecture.