{'fraction_non_alphanumeric': 0.01818181818181818, 'fraction_numerical': 0.0, 'mean_word_length': 5.672727272727273, '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}}
A Multi-Domain Architectural Efficiency Metric

Developments in the field of circuit design and computer architecture have introduced a variety of architectures such as in-memory compute, near-memory compute, FPGA, CGRA, DSP, GPU and many more still in the research phase. There is an increasing need for a unifying architectural efficiency metric that is applicable during the architecture design phase as well as post-silicon benchmarking, which quantifies different architectures, and is independent of the underlying implementation technology. This paper introduces an architectural efficiency metric that satisfies the above mentioned criteria. The metric quantifies the number of instructions or the size of reconfiguration bits required to perform a computation over a range of program sizes in the architecture. The metric helps understand limitations and benefits of different architectures, and provides insight into theoretical throughput. Our efficiency metric also informs the user/compiler about hardware options in a multi-architecture system based on the size of computation required.