Object-oriented concurrent programming ABCL/1
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Pool-T: a parallel object-oriented language
Object-oriented concurrent programming
PRESTO: a system for object-oriented parallel programming
Software—Practice & Experience
A bridging model for parallel computation
Communications of the ACM
Concurrency and reusability: from sequential to parallel
Journal of Object-Oriented Programming
Ellie language definition report
ACM SIGPLAN Notices
Emerald: a general-purpose programming language
Software—Practice & Experience
Eiffel: the language
Eiffel classes for concurrent programming
TOOLS 4 Proceedings of the fourth international conference on Technology of object-oriented languages and systems
A parallel execution environment for a sequential object oriented language
ICS '92 Proceedings of the 6th international conference on Supercomputing
Pandore: a system to manage data distribution
ICS '90 Proceedings of the 4th international conference on Supercomputing
PPOPP '90 Proceedings of the second ACM SIGPLAN symposium on Principles & practice of parallel programming
Object-Oriented Software Construction
Object-Oriented Software Construction
A Multi-Processor Estelle-to-C Compiler to Prototype Algorithms on Parallel Machines
Proceedings of the IFIP WG6.1 Ninth International Symposium on Protocol Specification, Testing and Verification IX
EPEE: an Eiffel Environment to Program Distributed Memory Parallel Computers
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
Reusability: The Case for Object-Oriented Design
IEEE Software
Configuration Classes: An Object-Oriented Paradigm for Distributed Programming
IWOOOS '95 Proceedings of the 4th International Workshop on Object-Orientation in Operating Systems
Lifting sequential graph algorithms for distributed-memory parallel computation
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Hi-index | 0.00 |
Software environments for commercially available Distributed Memory Parallel Computers (DMPCs) mainly consist of libraries of routines to handle communications between processes written in sequential languages such as C or Fortran. This approach makes it difficult to program massively parallel systems in both an easy and efficient way. Another approach relies on (semi-)automatic parallelizing compilers but it has its own drawbacks. We propose to tackle this problem at an intermediate level (i.e. between high level parallelizing compilers and raw libraries), using Object Oriented (OO) technologies. We show that existing OO techniques based on the reuse of carefully designed software components can be applied with satisfactory results to the large scale scientific computation field. We propose to use a form of parallelism, known as data parallelism, and to embed it in a pure sequential OOL (Eiffel). We illustrate on several examples how sequential components and frameworks can be modified for parallel execution on DMPCs to allow for transparent parallelisation of classes using these components and frameworks.