{'fraction_non_alphanumeric': 0.011723329425556858, 'fraction_numerical': 0.0, 'mean_word_length': 4.930555555555555, '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}}
A study of dynamic instruction frequencies in byte compiled Java programs

The programming language Java has become too important to be ignored by embedded system designers. The bottleneck for launching Java into the high volume embedded system market is that the traditional ways to execute Java programs like the virtual machine and the just-in-time compiler require large resource overheads. Reducing these overheads will lead to more implementations of the Java machine on silicon in the near future. The paper presents dynamic instruction frequencies for a Java virtual machine after running five test programs. We find that a large part of the run time of a Java program is due to loading/storing variables to/from the stack. This analysis will help potential designers of Java processors to understand the bottlenecks of the Java virtual machine.