In this work a multi-threaded multi-frontal solver is developed. Sub-structuring techniques are applied obtaining a multi-frontal structure. Solver performance is increase dising multi-threading technologies. Object Oriented techniques are use din managing and planning all the classes involved.
The abstraction of the whole system results in a total of six classes:
TPZParFrontMatrix manages the frontal process as a whole, actuating on all remaining classes. TPZFrontSym and TPZFrontNonSym are both frontal matrices themselves, they implement symmetric and non symmetric storage and factoring schemes resp ectively.
TPZFileEqnStorage implements an on disk decompose d equations storage, through a binary file.
Using sub-structuring techniques results in element matrices being also frontal matrices, which are decompose d during their assembly. In the parallel implementation, element matrices computation can be assigned to more then one thread, as those same matrices are also frontal matrices they can also be decompose d concurrently.
An Intel BLAS library is used in the ank one update" operation durin factorization. The code is developed and tested on Mandrake GNU & Linux platform.