Memory-Optimized Software Synthesis from Dataflow Program Graphs with Large Size Data Samples

In multimedia and graphics applications, data samples of nonprimitive type require significant amount of buffer memory. This paper addresses the problem of minimizing the buffer memory requirement for such applications in embedded software synthesis from graphical dataflow programs based on the sync...

Full description

Bibliographic Details
Main Authors: Hyunok Oh, Soonhoi Ha
Format: Article in Journal/Newspaper
Language:English
Published: SpringerOpen 2003
Subjects:
Online Access:https://doi.org/10.1155/S1687617203212130
https://doaj.org/article/240ff5a1215a44e2a734a53655b1cefe
Description
Summary:In multimedia and graphics applications, data samples of nonprimitive type require significant amount of buffer memory. This paper addresses the problem of minimizing the buffer memory requirement for such applications in embedded software synthesis from graphical dataflow programs based on the synchronous dataflow (SDF) model with the given execution order of nodes. We propose a memory minimization technique that separates global memory buffers from local pointer buffers: the global buffers store live data samples and the local buffers store the pointers to the global buffer entries. The proposed algorithm reduces 67% memory for a JPEG encoder, 40% for an H.263 encoder compared with unshared versions, and 22% compared with the previous sharing algorithm for the H.263 encoder. Through extensive buffer sharing optimization, we believe that automatic software synthesis from dataflow program graphs achieves the comparable code quality with the manually optimized code in terms of memory requirement.