VLADYMIRa C++ matrix library for data-parallel applications
We present an object-oriented technique for the development of array-based programmes. It permits to develop applications that parallelise automatically and show an excellent scalability, even on large parallel machines. Unlike existing languages that treat array-based code at compiler level, we propose a dynamic approach through a matrix class library in C++. We will show that this model is even competitive with the compiler approach of Fortran 90. The aim of the paper is to introduce our matrix library as a conceptually easy and powerful development tool for scientific programmers, in particular in the field of cellular automata or lattice Boltzmann computations.
data-parallelism cellular automata array-based computation lattice boltzmann models