Implementing Micro-Heterogeneous Computing: Abstracting Auxiliary Processors in a Multi-Process OS

Computer systems employing heterogeneous special or limited purpose computation components can achieve higher performance with less power dissipation than those using only general-purpose processors. In order to effectively harness these advantages, an application must be tailored to a specific combination of computational components unless an abstraction layer exists to provide flexibility between different target computers. Herein is presented an implementation of Micro-Heterogeneous Computing, a framework which provides abstraction of underlying hardware and the scheduling and load balancing necessary in a multi-user computer system.

[1]  Ashish Sharma,et al.  Dynamic mapping in a heterogeneous environment with tasks having priorities and multiple deadlines , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[2]  R. F. Freund,et al.  Scheduling resources in multi-user, heterogeneous, computing environments with SmartNet , 1998, Proceedings Seventh Heterogeneous Computing Workshop (HCW'98).

[3]  Leo Budin,et al.  Static-dynamic mapping in heterogeneous computing environment , 2003, IEEE International Symposium on Virtual Environments, Human-Computer Interfaces and Measurement Systems, 2003. VECIMS '03. 2003.

[4]  William L Scheidel,et al.  Efficient Utilization of Fine-Grained Parallelism using a microHeterogeneous Environment , 2002 .

[5]  R. F. Freund,et al.  Dynamic matching and scheduling of a class of independent tasks onto heterogeneous computing systems , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

[6]  Füsun Özgüner,et al.  Dynamic, competitive scheduling of multiple DAGs in a distributed heterogeneous environment , 1998, Proceedings Seventh Heterogeneous Computing Workshop (HCW'98).

[7]  Mikhail Goltsman Performance estimation techniques for micro-heterogeneous computing systems , 2004 .