Static scheduling of synchronous data flow programs for digital signal processing
IEEE Transactions on Computers
Introduction to algorithms
Faster algorithms for finding small edge cuts in planar graphs
STOC '92 Proceedings of the twenty-fourth annual ACM symposium on Theory of computing
SIAM Journal on Computing
Finding minimum-quotient cuts in planar graphs
STOC '93 Proceedings of the twenty-fifth annual ACM symposium on Theory of computing
Symbolic model checking for real-time systems
Information and Computation
Software synthesis for DSP using Ptolemy
Journal of VLSI Signal Processing Systems - Special issue on design environments for DSP
Finding Separator Cuts in Planar Graphs within Twice the Optimal
SIAM Journal on Computing
Polygon rendering on a stream architecture
HWWS '00 Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware
Modeling, Verification, and Exploration of Task-Level Concurrency of Real-Time Embedded Systems
Modeling, Verification, and Exploration of Task-Level Concurrency of Real-Time Embedded Systems
Computers and Intractability; A Guide to the Theory of NP-Completeness
Computers and Intractability; A Guide to the Theory of NP-Completeness
A Polylogarithmic Approximation of the Minimum Bisection
SIAM Journal on Computing
A stream compiler for communication-exposed architectures
Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
Approximability of the Minimum Bisection Problem: An Algorithmic Challenge
MFCS '02 Proceedings of the 27th International Symposium on Mathematical Foundations of Computer Science
Towards Refining Temporal Specifications into Hybrid Systems
Hybrid Systems
StreamIt: A Language for Streaming Applications
CC '02 Proceedings of the 11th International Conference on Compiler Construction
You Assume, We Guarantee: Methodology and Case Studies
CAV '98 Proceedings of the 10th International Conference on Computer Aided Verification
Automatic application-specific instruction-set extensions under microarchitectural constraints
Proceedings of the 40th annual Design Automation Conference
Constant factor approximation of vertex-cuts in planar graphs
Proceedings of the thirty-fifth annual ACM symposium on Theory of computing
Media Processing Applications on the Imagine Stream Processor
ICCD '02 Proceedings of the 2002 IEEE International Conference on Computer Design: VLSI in Computers and Processors (ICCD'02)
Evaluation of the Raw Microprocessor: An Exposed-Wire-Delay Architecture for ILP and Streams
Proceedings of the 31st annual international symposium on Computer architecture
Proceedings of the 5th ACM international conference on Embedded software
Grand challenges in embedded systems
Proceedings of the 5th ACM international conference on Embedded software
Hierarchical task scheduler for interleaving subtasks on heterogeneous multiprocessor platforms
Proceedings of the 2005 Asia and South Pacific Design Automation Conference
Computer
System level design paradigms: Platform-based design and communication synthesis
Proceedings of the 41st annual Design Automation Conference
Proceedings of the 43rd annual Design Automation Conference
Exploiting coarse-grained task, data, and pipeline parallelism in stream programs
Proceedings of the 12th international conference on Architectural support for programming languages and operating systems
Support for High-Frequency Streaming in CMPs
Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture
Partitioning planar graphs with costs and weights
Journal of Experimental Algorithmics (JEA)
Synthesis of an application-specific soft multiprocessor system
Proceedings of the 2007 ACM/SIGDA 15th international symposium on Field programmable gate arrays
Multiprocessor resource allocation for throughput-constrained synchronous dataflow graphs
Proceedings of the 44th annual Design Automation Conference
Program mapping onto network processors by recursive bipartitioning and refining
Proceedings of the 44th annual Design Automation Conference
Analyzing concurrency in streaming applications
Journal of Systems Architecture: the EUROMICRO Journal
Control challenges in wireless sensor networks
HSCC'07 Proceedings of the 10th international conference on Hybrid systems: computation and control
The embedded systems design challenge
FM'06 Proceedings of the 14th international conference on Formal Methods
IEEE Transactions on Evolutionary Computation
Energy- and performance-aware mapping for regular NoC architectures
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Computing a minimum-depth planar graph embedding in O(n4) time
WADS'07 Proceedings of the 10th international conference on Algorithms and Data Structures
Versatile task assignment for heterogeneous soft dual-processor platforms
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Hi-index | 0.00 |
We present a methodology for pipelined software synthesis of streaming applications. First, we develop a versatile task assignment algorithm capable of optimizing realistically-arbitrary cost functions for two cores. The algorithm is exact (i.e., theoretically optimal) contrary to existing heuristics. Second, our approximation technique provides an adjustable knob to trade solution quality with algorithm runtime and memory. Third, we develop a recursive heuristic for more cores. FPGA-based emulated experiments validate our theoretical results. The exact algorithm yields 1.7 × throughput improvement. The approximation method offers a range of tradeoff points (e.g., 3 × faster with 20 × less memory) while degrading the throughput only 1% to 5%.