ICLDisco / dplasma

DPLASMA is a highly optimized, accelerator-aware, implementation of a dense linear algebra package for distributed heterogeneous systems. It is designed to deliver sustained performance for distributed systems where each node featuring multiple sockets of multicore processors, and if available, accelerators, using the PaRSEC runtime as a backend.
Other
11 stars 9 forks source link

Protect accesses to the data info and arena. #59

Closed bosilca closed 1 year ago

bosilca commented 2 years ago

This is a first step toward protecting access to the arena info hash table, the one allowing us to correctly reuse datatypes and their arena. While this patch should work, it might be overly costly, as all accesses are now protected, and I don't think we need this. Indeed, the arena are build during the creation of a taskpool, so by the time any of the threads are using them, they exist for a long time. Thus, the only portion we need to protect is when multiple threads, mostly in the context of recursive calls are creating new taskpool for submatrices, and they create types that can be reused.

Signed-off-by: George Bosilca bosilca@icl.utk.edu