Communicating complex data structures, that is those containing pointers, across machines is a common problem in distributed and parallel computing; particularly with the current move towards object-oriented programming. Some techniques utilise dedicated hardware and system software to efficiently achieve this. This paper presents a study of several software techniques for the communication of complex data structures. A selection of packing/unpacking techniques are tried and compared; in addition a mini-heap ADT, requiring no packing or unpacking, is studied. 1 Introduction Parallel computing is currently a hot topic in computing. The basic driving force of parallel computing is the desire and prospect for increased performance over conven...
Programming for parallel architectures that do not have a shared address space is extremely difficul...
Communication overhead in multiprocessor systems, as exemplified by cache coherency traffic and glob...
Increased programmability for concurrent applications in distributed systems requires automatic supp...
We present algorithms for the transportation of data in parallel and distributed systems that would ...
Many computations can be structured as sets of communicating data-parallel tasks. Individual tasks m...
Data-parallel languages allow programmers to use the familiar machine-independent programming style ...
This paper presents a pair of algorithms for output and input of pointer structures in binary format...
A variety of historically-proven computer languages have recently been extended to support parallel ...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/19...
Massively parallel computers (MPC) are characterized by the distribution of memory among an ensemble...
This paper addresses the problem of partitioning data for distributed memory machines (multicomputer...
Abstraction in computer programming provides a means of reducing complexity by emphasising the signi...
The parallelization of several applications result in unstructured data accesses on coarse-grained, ...
A fundamental challenge for parallel computing is to obtain high-level, architecture independent, al...
The goal of the research described in this article is to develop flexible language constructs for wr...
Programming for parallel architectures that do not have a shared address space is extremely difficul...
Communication overhead in multiprocessor systems, as exemplified by cache coherency traffic and glob...
Increased programmability for concurrent applications in distributed systems requires automatic supp...
We present algorithms for the transportation of data in parallel and distributed systems that would ...
Many computations can be structured as sets of communicating data-parallel tasks. Individual tasks m...
Data-parallel languages allow programmers to use the familiar machine-independent programming style ...
This paper presents a pair of algorithms for output and input of pointer structures in binary format...
A variety of historically-proven computer languages have recently been extended to support parallel ...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/19...
Massively parallel computers (MPC) are characterized by the distribution of memory among an ensemble...
This paper addresses the problem of partitioning data for distributed memory machines (multicomputer...
Abstraction in computer programming provides a means of reducing complexity by emphasising the signi...
The parallelization of several applications result in unstructured data accesses on coarse-grained, ...
A fundamental challenge for parallel computing is to obtain high-level, architecture independent, al...
The goal of the research described in this article is to develop flexible language constructs for wr...
Programming for parallel architectures that do not have a shared address space is extremely difficul...
Communication overhead in multiprocessor systems, as exemplified by cache coherency traffic and glob...
Increased programmability for concurrent applications in distributed systems requires automatic supp...