Anne Jaigu
07-25-2004, 02:49 AM
PI-1582: Energy reduction potential of a phase-based cache resizing
scheme for embedded systems
Gilles Pokam, François Bodin
http://www.irisa.fr/bibli/publi/pi/2003/1582/1582.html
24 pages - novembre 2003
Abstract
Managing the energy-performance tradeoff has become a major challenge on
embedded systems. The cache hierarchy is a typical example of such a
design target where this tradeoff plays a central role. With the
increasing level of integration density, a cache can feature several
billions of transistors, consuming a large proportion of the energy. In
the same time however, it also allows to considerably improve the
performance. Configurable caches are becoming the de-facto solution to
deal efficiently with that problem. Such caches are equipped with
artifacts that enable one to resize it dynamically. In the context of
embedded systems, however, many of these artifacts restrict the
configurability at the application level. We propose in this paper to
modify the structure of a configurable cache to offer embedded compilers
the opportunity to reconfigure it according to a program dynamic phase,
rather than on a per-application basis. We show in our experimental
results that the proposed scheme has a potential for improving the
compiler effectiveness to reduce the energy consumption, while not
excessively degrading the performance.
Résumé
La gestion de la consommation d'énergie est devenue un problème majeur
dans les systèmes embarqués. A titre d'exemple, les caches dans les
systèmes embarqués permettent d'améliorer les performances en maintenant
une fraction important du code source et des données sur la puce,
réduisant de ce fait la consommation d'énergie liée aux traffics
mémoires. En même temps aussi, à cause du haut niveau d'intégration, un
cache peut occuper jusqu'à 50% de la surface d'une puce, dissipant ainsi
une large part d'énergie. De plus en plus des caches configurables sont
donc introduits pour mieux s'attaquer à ce problème. L'intérêt des
caches configurables pour les systèmes embarqués est cependant encore
limité. Ceci parceque les solutions proposées actuellement n'offrent la
possibilité de configurer un cache qu'une fois avant l'exécution de
l'application. Nous proposons dans cet article de modifier la structure
d'un cache configurable afin de permettre au compilateur de le
reconfigurer en fonction des changements de phase dynamique de
l'application. Nous montrons que le modèle de cache que nous
introduisons offre un fort potentiel de réduction de la consommation
d'énergie, tout en se gardant également de trop dégrader les
performances.
Keywords: Cache, configurable architecture, low power, embedded systems
Mots clefs: Cache, architecture configurable, consommation d'énergie,
systèmes embarqués
scheme for embedded systems
Gilles Pokam, François Bodin
http://www.irisa.fr/bibli/publi/pi/2003/1582/1582.html
24 pages - novembre 2003
Abstract
Managing the energy-performance tradeoff has become a major challenge on
embedded systems. The cache hierarchy is a typical example of such a
design target where this tradeoff plays a central role. With the
increasing level of integration density, a cache can feature several
billions of transistors, consuming a large proportion of the energy. In
the same time however, it also allows to considerably improve the
performance. Configurable caches are becoming the de-facto solution to
deal efficiently with that problem. Such caches are equipped with
artifacts that enable one to resize it dynamically. In the context of
embedded systems, however, many of these artifacts restrict the
configurability at the application level. We propose in this paper to
modify the structure of a configurable cache to offer embedded compilers
the opportunity to reconfigure it according to a program dynamic phase,
rather than on a per-application basis. We show in our experimental
results that the proposed scheme has a potential for improving the
compiler effectiveness to reduce the energy consumption, while not
excessively degrading the performance.
Résumé
La gestion de la consommation d'énergie est devenue un problème majeur
dans les systèmes embarqués. A titre d'exemple, les caches dans les
systèmes embarqués permettent d'améliorer les performances en maintenant
une fraction important du code source et des données sur la puce,
réduisant de ce fait la consommation d'énergie liée aux traffics
mémoires. En même temps aussi, à cause du haut niveau d'intégration, un
cache peut occuper jusqu'à 50% de la surface d'une puce, dissipant ainsi
une large part d'énergie. De plus en plus des caches configurables sont
donc introduits pour mieux s'attaquer à ce problème. L'intérêt des
caches configurables pour les systèmes embarqués est cependant encore
limité. Ceci parceque les solutions proposées actuellement n'offrent la
possibilité de configurer un cache qu'une fois avant l'exécution de
l'application. Nous proposons dans cet article de modifier la structure
d'un cache configurable afin de permettre au compilateur de le
reconfigurer en fonction des changements de phase dynamique de
l'application. Nous montrons que le modèle de cache que nous
introduisons offre un fort potentiel de réduction de la consommation
d'énergie, tout en se gardant également de trop dégrader les
performances.
Keywords: Cache, configurable architecture, low power, embedded systems
Mots clefs: Cache, architecture configurable, consommation d'énergie,
systèmes embarqués