Paladin: a parallel object-oriented linear algebra library

Version française

Polymorphic Matrices in Paladin


Scientific programmers are eager to take advantage of the computational power offered by Distributed Computing Systems (DCSs), but are generally reluctant to undertake the porting of their application programs onto such machines. The DCS commercially available today are indeed widely believed to be difficult to use, which should not be a surprise since they are traditionally programmed with software tools dating back to the days of punch cards and paper tape. We claim that provided modern object oriented technologies are used, these computers can be programmed easily and efficiently. In EPEE, our Eiffel Parallel Execution Environment, we propose to use a kind of parallelism known as data-parallelism, encapsulated within classes of the Eiffel sequential object-oriented language, using the SPMD (Single Program Multiple Data) programming model. We describe our method for designing with this environment Paladin, an object-oriented linear algebra library for DCSs. We show how dynamic binding and polymorphism can be used to solve the problems set by the dynamic aspects of the distribution of linear algebra objects such as matrices and vectors.
Here is the postcript version of the full paper for OBPDC'95.