Summary: | This paper describes the portable implementation of a programming model based on shared objects that integrates task and data parallelism. As a starting point, the implementation uses two existing runtime systems: the Orca runtime system (RTS), for task parallel programming, and Hawk, for data parallel programming. To achieve this portable integration, we implemented the Orca RTS and Hawk on top of Panda, a virtual machine that was designed to facilitate porting parallel programming systems to new architectures. With the resulting system, an application program may use the task parallel model of Orca and the data parallel model of Hawk by calling the appropriate primitives in either the Orca RTS or in Hawk. keywords: Data Parallel Programming. Partitioned Shared Objects. Portable Runtime System. Portable Virtual Machine. Shared Objects. Task Parallel Programming. 1 Introduction Supporting both task and data parallelism in one programming system is useful, since many applications need .
|