Class : SMPArchitecture

class deriving from AbstractArchitecture

SMPArchitecture :

prototype: SMPArchitecture (int nbrProcesses )

description:constructor


input parameters:
nbrProcesses = number of processes to run simultaneously (in principle, the number of processors that can be allocated)



~SMPArchitecture :

prototype: ~SMPArchitecture ()

description:destructor



Multiply :

prototype: void Multiply (AbstractHamiltonian* , Vector& , Vector& vDestination )

description:multiply a vector by an hamiltonian and store the result in another vector


input parameters:
hamiltonian = pointer to the hamiltonian to use
vSource = vector to multiply
vDestination = vector where result has to be stored



ExecuteOperation :

prototype: bool ExecuteOperation (VectorHamiltonianMultiplyOperation* operation )

description:execute an architecture-dependent vector hamiltonian multiplication operation


input parameters:
operation = pointer to the operation to execute


return value: true if operation has been completed successfully



ThreadMain :

prototype: friend void* ThreadMain (void* param )

description:main function for thread


input parameters:
param = pointer to additional parameters, has to be cast into ThreadMainParameter pointer


return value: unused pointer (null)



ExecuteOperation :

prototype: bool ExecuteOperation (AddRealLinearCombinationOperation* operation )

description:execute an architecture-dependent add real linear combination operation


input parameters:
operation = pointer to the operation to execute


return value: true if operation has been completed successfully



ExecuteOperation :

prototype: bool ExecuteOperation (AddComplexLinearCombinationOperation* operation )

description:execute an architecture-dependent add complex linear combination operation


input parameters:
operation = pointer to the operation to execute


return value: true if operation has been completed successfully



ExecuteOperation :

prototype: bool ExecuteOperation (MultipleRealScalarProductOperation* operation )

description:execute an architecture-dependent multiple real scalar product operation


input parameters:
operation = pointer to the operation to execute


return value: true if operation has been completed successfully



ExecuteOperation :

prototype: bool ExecuteOperation (MultipleComplexScalarProductOperation* operation )

description:execute an architecture-dependent multiple complex scalar product operation


input parameters:
operation = pointer to the operation to execute


return value: true if operation has been completed successfully



ExecuteOperation :

prototype: bool ExecuteOperation (MatrixMatrixMultiplyOperation* operation )

description:execute an architecture-dependent matrix matrix multiplication operation


input parameters:
operation = pointer to the operation to execute


return value: true if operation has been completed successfully



ExecuteOperation :

prototype: bool ExecuteOperation (AbstractPrecalculationOperation* operation )

description:execute an architecture-dependent abstract hamiltonian precalculation operation


input parameters:
operation = pointer to the operation to execute


return value: true if operation has been completed successfully



Back to index.