*banner
 

StreaMorph: A Case for Synthesizing Energy-Efficient Adaptive Programs Using High-Level Abstractions
Dai Bui, Edward A. Lee

Citation
Dai Bui, Edward A. Lee. "StreaMorph: A Case for Synthesizing Energy-Efficient Adaptive Programs Using High-Level Abstractions". International Conference on Embedded Software (EMSOFT), September, 2013; In Proceedings of the 13th International Conference on Embedded SOFTWARE (EMSOFT).

Abstract
This paper presents the concept of adaptive programs, whose computation and communication structures can morph to adapt to environmental and demand changes to save energy and computing resources. In this approach, programmers write one single program using a language at a higher level of abstraction. The compiler will exploit the properties of the abstractions to generate an adaptive program that is able to adjust computation and communication structures to environmental and demand changes. We develop a technique, called StreaMorph, that exploits the properties of stream programs's Synchronous Dataflow (SDF) programming model to enable runtime stream graph transformation. The StreaMorph technique can be used to optimize memory usage and to adjust core utilization leading to energy reduction by turning off idle cores or reducing operating frequencies. The main challenge for such a runtime transformation is to maintain consistent program states by copying states between different stream graph structures, because a stream program optimized for different numbers of cores often has different sets of filters and inter-filter channels.We propose an analysis that helps simplify program state copying processes by minimizing copying of states based on the properties of the SDF model. Finally, we implement the StreaMorph method in the StreamIt compiler. Our experiments on the Intel Xeon E5450 show that using StreaMorph to minimize the number of cores used from eight cores to one core, e.g. when streaming rates become lower, can reduce energy consumption by 76.33% on average. Using StreaMorph to spread workload from four cores to six or seven cores, e.g. when more cores become available, to reduce operating frequencies, can lead to 10% energy reduction. In addition, StreaMorph can lead to a buffer size reduction of 82.58% in comparison with a straightforward inter-core filter migration technique when switching from using eight cores to one core.

Electronic downloads

Citation formats  
  • HTML
    Dai Bui, Edward A. Lee. <a
    href="http://chess.eecs.berkeley.edu/pubs/1003.html"
    >StreaMorph: A Case for Synthesizing Energy-Efficient
    Adaptive Programs Using High-Level Abstractions</a>,
    International Conference on Embedded Software (EMSOFT),
    September, 2013; In <i>Proceedings of the 13th
    International Conference on Embedded SOFTWARE
    (EMSOFT)</i>.
  • Plain text
    Dai Bui, Edward A. Lee. "StreaMorph: A Case for
    Synthesizing Energy-Efficient Adaptive Programs Using
    High-Level Abstractions". International Conference on
    Embedded Software (EMSOFT), September, 2013; In
    <i>Proceedings of the 13th International Conference on
    Embedded SOFTWARE (EMSOFT)</i>.
  • BibTeX
    @inproceedings{BuiLee13_StreaMorphCaseForSynthesizingEnergyEfficientAdaptive,
        author = {Dai Bui and Edward A. Lee},
        title = {StreaMorph: A Case for Synthesizing
                  Energy-Efficient Adaptive Programs Using
                  High-Level Abstractions},
        booktitle = {International Conference on Embedded Software
                  (EMSOFT)},
        month = {September},
        year = {2013},
        note = {In <i>Proceedings of the 13th International
                  Conference on Embedded SOFTWARE (EMSOFT)</i>.},
        abstract = {This paper presents the concept of adaptive
                  programs, whose computation and communication
                  structures can morph to adapt to environmental and
                  demand changes to save energy and computing
                  resources. In this approach, programmers write one
                  single program using a language at a higher level
                  of abstraction. The compiler will exploit the
                  properties of the abstractions to generate an
                  adaptive program that is able to adjust
                  computation and communication structures to
                  environmental and demand changes. We develop a
                  technique, called StreaMorph, that exploits the
                  properties of stream programs's Synchronous
                  Dataflow (SDF) programming model to enable runtime
                  stream graph transformation. The StreaMorph
                  technique can be used to optimize memory usage and
                  to adjust core utilization leading to energy
                  reduction by turning off idle cores or reducing
                  operating frequencies. The main challenge for such
                  a runtime transformation is to maintain consistent
                  program states by copying states between different
                  stream graph structures, because a stream program
                  optimized for different numbers of cores often has
                  different sets of filters and inter-filter
                  channels.We propose an analysis that helps
                  simplify program state copying processes by
                  minimizing copying of states based on the
                  properties of the SDF model. Finally, we implement
                  the StreaMorph method in the StreamIt compiler.
                  Our experiments on the Intel Xeon E5450 show that
                  using StreaMorph to minimize the number of cores
                  used from eight cores to one core, e.g. when
                  streaming rates become lower, can reduce energy
                  consumption by 76.33% on average. Using StreaMorph
                  to spread workload from four cores to six or seven
                  cores, e.g. when more cores become available, to
                  reduce operating frequencies, can lead to 10%
                  energy reduction. In addition, StreaMorph can lead
                  to a buffer size reduction of 82.58% in comparison
                  with a straightforward inter-core filter migration
                  technique when switching from using eight cores to
                  one core.},
        URL = {http://chess.eecs.berkeley.edu/pubs/1003.html}
    }
    

Posted by Dai Bui on 12 Aug 2013.
Groups: ptolemy
For additional information, see the Publications FAQ or contact webmaster at chess eecs berkeley edu.

Notice: This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright.

©2002-2018 Chess