  Recurrent neural networks (RNNs) have shown state of the art results for
speech recognition, natural language processing, image captioning and video
summarizing applications. Many of these applications run on low-power
platforms, so their energy efficiency is extremely important. We observed that
cache-oblivious RNN scheduling during inference typically results in 30-50x
more data transferred on and off the CPU than the application's working set
size. This can potentially impact its energy efficiency. This paper presents a
new metric called Data Reuse Efficiency to gauge the RNN scheduling efficiency
of a platform and shows the factors that influence the DRE value. Additionally,
this paper discusses an optimization to improve reuse in RNNs and highlights
the positive impact of this optimization on the total amount of memory read
from or written to the memory controller (and, hence, the DRE value) during the
execution of an RNN application for a mobile SoC.
