In this work a parallel frontal solver is implemented and documented, based on an object oriented environment. The main objective of the project is to develop a solver which takes advantage of parallel architectures.
Four main classes are implemented, TPZFront responsible for the frontal matrix decomposition, TPZEqnArray stores a vector of sparse equations on TPZFrontMatrix, TPZEqnStorage that executes data storage and management (reading and writing to disk) and the fourth class TPZFrontMatrix that manages all three classes and the process as a whole.
Reading and writing to disk takes interface time (buffering), but little cpu time. Therefore if it is executed in a separate thread, the read/writing would occur in parallel with element matrix computation and front matrix decomposition. Element stiffness computation and front decomposition run in separate threads as well.
Performance results are shown to demonstrate the effectiveness of this approach on both Linux and Windows NT platforms. Shared memory parallelization is used.