NeoPZ
|
Public Member Functions | |
ParallelAssembleTaskMatrix (const TPZFMatrix< TVar > &x, TVar alpha, TPZAutoPointer< TPZDohrAssembly< TVar > > assembly, TPZAutoPointer< TPZDohrAssembleList< TVar > > &assemblestruct) | |
Constructor. More... | |
void | addWorkItem (TPZDohrThreadMultData< TSubStruct > data) |
Add a new work item to the array. More... | |
Private Attributes | |
std::vector< TPZDohrThreadMultData< TSubStruct > > | mWorkItems |
Array of work items. More... | |
const TPZFMatrix< TVar > * | fInput |
The vector with which we will multiply. More... | |
TVar | fAlpha |
Scalar multiplication factor. More... | |
pthread_mutex_t | fAccessLock |
Mutex which will enable the access protection of the list. More... | |
TPZAutoPointer< TPZDohrAssembly< TVar > > | fAssembly |
The data structure which defines the assemble destinations. More... | |
std::list< TPZDohrThreadMultData< TSubStruct > > | fWork |
The list of data objects which need to treated by the threads. More... | |
TPZAutoPointer< TPZDohrAssembleList< TVar > > | fAssemblyStructure |
The local contribution to the v2 vector. More... | |
Threading Building Blocks
Definition at line 46 of file tpzdohrmatrix.cpp.
|
inline |
Constructor.
Definition at line 70 of file tpzdohrmatrix.cpp.
|
inline |
Add a new work item to the array.
Definition at line 73 of file tpzdohrmatrix.cpp.
References TPZMatrix< TVar >::Cols(), TPZDohrThreadMultData< TSubStruct >::fisub, TPZDohrThreadMultData< TSubStruct >::fSub, TPZMatrix< TVar >::operator()(), pz::parallel_for(), and TPZMatrix< TVar >::Rows().
|
private |
Mutex which will enable the access protection of the list.
Definition at line 57 of file tpzdohrmatrix.cpp.
|
private |
Scalar multiplication factor.
Definition at line 55 of file tpzdohrmatrix.cpp.
|
private |
The data structure which defines the assemble destinations.
Definition at line 59 of file tpzdohrmatrix.cpp.
|
private |
The local contribution to the v2 vector.
Definition at line 63 of file tpzdohrmatrix.cpp.
|
private |
The vector with which we will multiply.
Definition at line 53 of file tpzdohrmatrix.cpp.
|
private |
The list of data objects which need to treated by the threads.
Definition at line 61 of file tpzdohrmatrix.cpp.
|
private |
Array of work items.
Definition at line 50 of file tpzdohrmatrix.cpp.