A hierarchical framework to enhance scalability and performance of scheduling and mapping algorithms

Crucial to design productivity, architecture level synthesis algorithms trade off between design quality and algorithm complexity. The well-known list scheduling algorithm has a O(N) complexity but has well known deficiencies. Ant Colony, FDLS and Simulated Annealing have at least O(N3) time complexity. These considerations force a limitation on the scale of design instances that can be synthesized. A hierarchical analysis framework is proposed that improves both the run-time and ultimate performance of classical scheduling and mapping algorithms. Since the design hierarchy is not imposed, classical induced constraint issues from hierarchy are avoided. Compared to state-of-the-art heuristics, the framework runs an order of magnitude faster while achieving 12% performance improvement. The framework is able to efficiently address designs with more than 104 operations which is beyond the capability of any high quality flat heuristics.

[1]  Pier Luca Lanzi,et al.  Ant Colony Heuristic for Mapping and Scheduling Tasks and Communications on Heterogeneous Embedded Systems , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[2]  Jason Cong,et al.  Architecture and synthesis for on-chip multicycle communication , 2004, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[3]  Philip H. Sweany,et al.  Instruction Scheduling Using Simulated Annealing , 1998 .

[4]  Salim Hariri,et al.  Performance-Effective and Low-Complexity Task Scheduling for Heterogeneous Computing , 2002, IEEE Trans. Parallel Distributed Syst..

[5]  Wei Tang,et al.  A hierarchical Ant-Colony heuristic for architecture synthesis for on-chip communication , 2013, 2013 Conference on Design and Architectures for Signal and Image Processing.

[6]  Ishfaq Ahmad,et al.  Dynamic Critical-Path Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors , 1996, IEEE Trans. Parallel Distributed Syst..

[7]  K. Mani Chandy,et al.  A comparison of list schedules for parallel processing systems , 1974, Commun. ACM.

[8]  S. Beaty Genetic Algorithms versus Tabu Search for Instruction Scheduling , 1993 .

[9]  G. Karypis,et al.  Multilevel k-way hypergraph partitioning , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).

[10]  Wei Tang,et al.  Scalable high quality hierarchical scheduling , 2013, Proceedings of the 2013 Electronic System Level Synthesis Conference (ESLsyn).

[11]  Gang Wang,et al.  Ant Colony Optimizations for Resource- and Timing-Constrained Operation Scheduling , 1997, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[12]  Antonino Tumeo,et al.  Mapping and scheduling of parallel C applications with Ant Colony Optimization onto heterogeneous reconfigurable MPSoCs , 2010, 2010 15th Asia and South Pacific Design Automation Conference (ASP-DAC).

[13]  Scott A. Mahlke,et al.  Region-based hierarchical operation partitioning for multicluster processors , 2003, PLDI '03.

[14]  Miodrag Potkonjak,et al.  MediaBench: a tool for evaluating and synthesizing multimedia and communications systems , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[15]  Pierre G. Paulin,et al.  Force-directed scheduling for the behavioral synthesis of ASICs , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[16]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[17]  Theerayod Wiangtong,et al.  Comparing Three Heuristic Search Methods for Functional Partitioning in Hardware–Software Codesign , 2002, Des. Autom. Embed. Syst..

[18]  R. Kolisch,et al.  Heuristic algorithms for the resource-constrained project scheduling problem: classification and computational analysis , 1999 .