Technical Report Number
We identify common storage-referencing gestures in Java bytecode and machine-level code, so that a gesture comprising a sequence of storage dereferences can be condensed into a single instruction. Because these gestures access memory in a recognizable pattern, the pattern can be preloaded into and executed by a “smart” memory. This approach can improve program execution time by making memory accesses more efﬁcient, by saving CPU cycles, bus cycles, and power. We introduce a language of valid gesture types and conduct a series of experiments to analyze the characteristics of gestures deﬁned by this language within a set of benchmarks written in Java and C. We gather statistics on the frequency, length, and number of types of gestures found within these benchmarks, using both static and dynamic analysis methods. We propose an optimization of the number of gestures required for a program, showing the optimization problem to be NP-Complete.
Fox, Lucas M., "Memory-Accessing Optimization Via Gestures" Report Number: WUCSE-2003-32 (2003). All Computer Science and Engineering Research.