P2G is a distributed execution system for processing of continuous multimedia wordloads on heterogeneous architectures. P2G comprises a kernel language, a compiler, a runtime, an instrumentation system and high- and low-level schedulers.
This combination allows P2G to adapt to the resources at hand; a program is written once in kernel language, and the P2G system dynamically assigns resources to and runs the workload on the target machines.
The unique kernel language allows the programmer to express parallel parts of a program with a very fine granularity, without sacrificing the overhead which is normally incurred when too fine granularity is used. The P2G system overcomes this by dynamically merging tasks and data to the optimal granularity for the target architecture by utilizing instrumentation data in a feedback-loop.
¹ © 2011 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.