PVM: a framework for parallel distributed computing
Concurrency: Practice and Experience
IEEE Transactions on Parallel and Distributed Systems
Critical Path Scheduling with Resource and Processor Constraints
Journal of the ACM (JACM)
Design of dynamic load-balancing tools for parallel applications
Proceedings of the 14th international conference on Supercomputing
A Distributed Parallel Programming Framework
IEEE Transactions on Software Engineering
Task Allocation for Distributed Multimedia Processing on Wirelessly Networked Handheld Devices
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
Multimedia Processing Model for a Distributed Multimedia I/O System
Proceedings of the Third International Workshop on Network and Operating System Support for Digital Audio and Video
BOINC: A System for Public-Resource Computing and Storage
GRID '04 Proceedings of the 5th IEEE/ACM International Workshop on Grid Computing
Resource-Aware Scientific Computation on a Heterogeneous Cluster
Computing in Science and Engineering
GPU-accelerated deep shadow maps for direct volume rendering
GH '06 Proceedings of the 21st ACM SIGGRAPH/EUROGRAPHICS symposium on Graphics hardware
Xen and the Art of Cluster Scheduling
VTDC '06 Proceedings of the 2nd International Workshop on Virtualization Technology in Distributed Computing
Resource-Aware Distributed Scheduling Strategies for Large-Scale Computational Cluster/Grid Systems
IEEE Transactions on Parallel and Distributed Systems
Task Scheduling of Parallel Processing in CPU-GPU Collaborative Environment
ICCSIT '08 Proceedings of the 2008 International Conference on Computer Science and Information Technology
Critical-path planning and scheduling
IRE-AIEE-ACM '59 (Eastern) Papers presented at the December 1-3, 1959, eastern joint IRE-AIEE-ACM computer conference
Dependency graph approach to load balancing distributed volume visualization
The Visual Computer: International Journal of Computer Graphics
A Compute Unified System Architecture for Graphics Clusters Incorporating Data Locality
IEEE Transactions on Visualization and Computer Graphics
ICASSP '09 Proceedings of the 2009 IEEE International Conference on Acoustics, Speech and Signal Processing
StarPU: A Unified Platform for Task Scheduling on Heterogeneous Multicore Architectures
Euro-Par '09 Proceedings of the 15th International Euro-Par Conference on Parallel Processing
RenderAnts: interactive Reyes rendering on GPUs
ACM SIGGRAPH Asia 2009 papers
Optimized volume raycasting for graphics-hardware-based cluster systems
EG PGV'06 Proceedings of the 6th Eurographics conference on Parallel Graphics and Visualization
Softshell: dynamic scheduling on GPUs
ACM Transactions on Graphics (TOG) - Proceedings of ACM SIGGRAPH Asia 2012
Load balancing utilizing data redundancy in distributed volume rendering
EG PGV'11 Proceedings of the 11th Eurographics conference on Parallel Graphics and Visualization
Extending a distributed virtual reality system with exchangeable rendering back-ends
The Visual Computer: International Journal of Computer Graphics
Hi-index | 0.00 |
We propose PaTraCo (Parallel Transparent Computation), a framework for developing parallel applications for single host or ad-hoc compute network environments incorporating a multitude of different kinds of compute devices including graphics cards. It supports both task parallelism and data parallelism, and is designed for algorithms that can be decomposed into passes. The provided API supports the user in structuring the program accordingly. Only application-specific parts need to be implemented using a set of base classes. Multiple compute kernel implementations can be provided per pass, one for each device class (e.g. CPU, GPU, CELL). The scheduler which is based on the critical path method determines prior to the actual computation which implementation to execute on which device to minimize the overall runtime by considering device speed, availability and transfer cost. This procedure has the additional advantage that data can already be transferred to a compute device before the actual need for it arises and thus network transfers can often be executed parallel to computation. Overall, this results in reduced device idling times (if any) and more efficient device utilization. Thread setup and communication, network data transfers and scheduling are handled transparently to the user. PaTraCo monitors the execution in order to update the cost estimates that are used by the scheduler and to provide the user with visual analysis. We evaluate the framework by means of an interactive distributed volume renderer.