|
Maestro 0.3.1
Unified interface for quantum circuit simulation
|
#include <NetworkJob.h>
Public Types | |
| using | ExecuteResults = typename Circuits::Circuit<Time>::ExecuteResults |
Public Member Functions | |
| ExecuteJob ()=delete | |
| ExecuteJob (const std::shared_ptr< Circuits::Circuit< Time > > &c, ExecuteResults &r, size_t cnt, size_t nq, size_t nc, size_t ncr, Simulators::SimulatorType t, Simulators::SimulationType m, std::mutex &mut) | |
| void | DoWork () |
| void | DoWorkNoLock () |
| size_t | GetJobCount () const |
Static Public Member Functions | |
| static bool | IsOptimisableForMultipleShots (Simulators::SimulatorType t, size_t curCnt) |
Public Attributes | |
| Configuration< Time > | config |
| const size_t | curCnt |
| size_t * | curMaxBondDim = nullptr |
| std::shared_ptr< Circuits::Circuit< Time > > | dcirc |
| std::vector< bool > | executedGates |
| const Simulators::SimulationType | method |
| std::shared_ptr< Network::INetwork< Time > > | network |
| const size_t | nrCbits |
| const size_t | nrQubits |
| const size_t | nrResultCbits |
| bool | optimiseMultipleShotsExecution = true |
| std::shared_ptr< Simulators::ISimulator > | optSim |
| ExecuteResults & | res |
| std::mutex & | resultsMutex |
| const Simulators::SimulatorType | simType |
Definition at line 28 of file NetworkJob.h.
| using Network::ExecuteJob< Time >::ExecuteResults = typename Circuits::Circuit<Time>::ExecuteResults |
Definition at line 30 of file NetworkJob.h.
|
delete |
|
inlineexplicit |
Definition at line 34 of file NetworkJob.h.
References curCnt, dcirc, method, nrCbits, nrQubits, nrResultCbits, res, resultsMutex, and simType.
|
inline |
Definition at line 48 of file NetworkJob.h.
References Circuits::OperationState::AllocateBits(), config, Simulators::SimulatorsFactory::CreateSimulator(), curCnt, curMaxBondDim, dcirc, executedGates, Circuits::OperationState::GetAllBits(), Simulators::kMatrixProductState, Simulators::kQiskitAer, Simulators::kStatevector, method, network, nrCbits, nrQubits, nrResultCbits, optimiseMultipleShotsExecution, optSim, res, Circuits::OperationState::Reset(), resultsMutex, and simType.
|
inline |
Definition at line 187 of file NetworkJob.h.
References Circuits::OperationState::AllocateBits(), config, Simulators::SimulatorsFactory::CreateSimulator(), curCnt, curMaxBondDim, dcirc, executedGates, Circuits::OperationState::GetAllBits(), Simulators::kMatrixProductState, Simulators::kQiskitAer, Simulators::kStatevector, method, network, nrCbits, nrQubits, nrResultCbits, optimiseMultipleShotsExecution, optSim, res, Circuits::OperationState::Reset(), and simType.
|
inline |
Definition at line 373 of file NetworkJob.h.
References curCnt.
|
inlinestatic |
Definition at line 368 of file NetworkJob.h.
References curCnt.
| Configuration<Time> Network::ExecuteJob< Time >::config |
Definition at line 480 of file NetworkJob.h.
Referenced by DoWork(), and DoWorkNoLock().
| const size_t Network::ExecuteJob< Time >::curCnt |
Definition at line 465 of file NetworkJob.h.
Referenced by ExecuteJob(), DoWork(), DoWorkNoLock(), GetJobCount(), and IsOptimisableForMultipleShots().
| size_t* Network::ExecuteJob< Time >::curMaxBondDim = nullptr |
Definition at line 483 of file NetworkJob.h.
Referenced by DoWork(), and DoWorkNoLock().
| std::shared_ptr<Circuits::Circuit<Time> > Network::ExecuteJob< Time >::dcirc |
Definition at line 463 of file NetworkJob.h.
Referenced by ExecuteJob(), DoWork(), and DoWorkNoLock().
| std::vector<bool> Network::ExecuteJob< Time >::executedGates |
Definition at line 476 of file NetworkJob.h.
Referenced by DoWork(), and DoWorkNoLock().
| const Simulators::SimulationType Network::ExecuteJob< Time >::method |
Definition at line 471 of file NetworkJob.h.
Referenced by ExecuteJob(), DoWork(), and DoWorkNoLock().
| std::shared_ptr<Network::INetwork<Time> > Network::ExecuteJob< Time >::network |
Definition at line 482 of file NetworkJob.h.
Referenced by DoWork(), and DoWorkNoLock().
| const size_t Network::ExecuteJob< Time >::nrCbits |
Definition at line 467 of file NetworkJob.h.
Referenced by ExecuteJob(), DoWork(), and DoWorkNoLock().
| const size_t Network::ExecuteJob< Time >::nrQubits |
Definition at line 466 of file NetworkJob.h.
Referenced by ExecuteJob(), DoWork(), and DoWorkNoLock().
| const size_t Network::ExecuteJob< Time >::nrResultCbits |
Definition at line 468 of file NetworkJob.h.
Referenced by ExecuteJob(), DoWork(), and DoWorkNoLock().
| bool Network::ExecuteJob< Time >::optimiseMultipleShotsExecution = true |
Definition at line 474 of file NetworkJob.h.
Referenced by DoWork(), and DoWorkNoLock().
| std::shared_ptr<Simulators::ISimulator> Network::ExecuteJob< Time >::optSim |
Definition at line 475 of file NetworkJob.h.
Referenced by DoWork(), and DoWorkNoLock().
| ExecuteResults& Network::ExecuteJob< Time >::res |
Definition at line 464 of file NetworkJob.h.
Referenced by ExecuteJob(), DoWork(), and DoWorkNoLock().
| std::mutex& Network::ExecuteJob< Time >::resultsMutex |
Definition at line 472 of file NetworkJob.h.
Referenced by ExecuteJob(), and DoWork().
| const Simulators::SimulatorType Network::ExecuteJob< Time >::simType |
Definition at line 470 of file NetworkJob.h.
Referenced by ExecuteJob(), DoWork(), and DoWorkNoLock().