Memory coherence in shared virtual memory systems
ACM Transactions on Computer Systems (TOCS)
Compiling Fortran D for MIMD distributed-memory machines
Communications of the ACM
An integrated compile-time/run-time software distributed shared memory system
Proceedings of the seventh international conference on Architectural support for programming languages and operating systems
Limitations of cycle stealing for parallel processing on a network of homogeneous workstations
Journal of Parallel and Distributed Computing
Automatic data layout for distributed-memory machines
ACM Transactions on Programming Languages and Systems (TOPLAS)
Transparent adaptive parallelism on NOWs using OpenMP
Proceedings of the seventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Exploiting Fine-Grained Idle Periods in Networks of Workstations
IEEE Transactions on Parallel and Distributed Systems
Journal of Parallel and Distributed Computing
Dynamic data distribution with control flow analysis
Supercomputing '96 Proceedings of the 1996 ACM/IEEE conference on Supercomputing
Accurate data redistribution cost estimation in software distributed shared memory systems
PPoPP '01 Proceedings of the eighth ACM SIGPLAN symposium on Principles and practices of parallel programming
PPoPP '01 Proceedings of the eighth ACM SIGPLAN symposium on Principles and practices of parallel programming
On Optimal Strategies for Cycle-Stealing in Networks of Workstations
IEEE Transactions on Computers
An Implementation of Interprocedural Bounded Regular Section Analysis
IEEE Transactions on Parallel and Distributed Systems
Adaptive Load Balancing for MPI Programs
ICCS '01 Proceedings of the International Conference on Computational Science-Part II
An Overview of a Compiler for Scalable Parallel Machines
Proceedings of the 6th International Workshop on Languages and Compilers for Parallel Computing
Automatic Selection of Dynamic Data Partitioning Schemes for Distributed-Memory Multicomputers
LCPC '95 Proceedings of the 8th International Workshop on Languages and Compilers for Parallel Computing
Predicting the CPU Availability of Time-Shared Unix Systems on the Computational Grid
HPDC '99 Proceedings of the 8th IEEE International Symposium on High Performance Distributed Computing
Demand-based coscheduling of parallel jobs on multiprogrammed multiprocessors
Demand-based coscheduling of parallel jobs on multiprogrammed multiprocessors
A comparative analysis of fine-grain threads packages
Journal of Parallel and Distributed Computing
A progressive multi-layer resource reconfiguration framework for time-shared grid systems
Future Generation Computer Systems
Runtime support for adaptive resource provisioning in MPI applications
EuroMPI'12 Proceedings of the 19th European conference on Recent Advances in the Message Passing Interface
Euro-Par'13 Proceedings of the 19th international conference on Parallel Processing
Hi-index | 0.00 |
Distributing data is a fundamental problem in implementing efficient distributed-memory parallel programs. The problem becomes more difficult in environments where the participating nodes are not dedicated to a parallel application. We are investigating the data distribution problem in non-dedicated environments in the context of explicit message-passing programs. To address this problem, we have designed and implemented an extension to MPI called dynamic MPI (Dyn-MPI). The key component of Dyn-MPI is its run-time system, which efficiently and automatically redistributes data on the fly when there are changes in the application or the underlying environment. Dyn-MPI supports efficient memory allocation, precise measurement of system load and computation time, and node removal. Performance results show that programs that use Dyn-MPI execute efficiently in non-dedicated environments, including up to almost a threefold improvement compared to programs that do not redistribute data and a 25% improvement over standard adaptive load balancing techniques.