prep /nologo /om /ft /SF CQuantumDoc::SimThreadStart "D:\users\jon\quantum\Debug\quantum" profile /nologo /nc "D:\users\jon\quantum\Debug\quantum" prep /nologo /m "D:\users\jon\quantum\Debug\quantum" plist /nologo "D:\users\jon\quantum\Debug\quantum" Profile: Function timing, sorted by time Date: Thu May 15 21:00:05 1997 Program Statistics ------------------ Command line at 1997 May 15 20:57: "D:\users\jon\quantum\Debug\quantum" Start function: CQuantumDoc::SimThreadStart(void *) Total time: 6853.968 millisecond Time outside of functions: 4.931 millisecond Call depth: 12 Total functions: 423 Total hits: 4027040 Function coverage: 24.8% Overhead Calculated 7 Overhead Average 7 Module Statistics for quantum.exe --------------------------------- Time in module: 6849.036 millisecond Percent of time in module: 100.0% Functions in module: 423 Hits in module: 4027040 Module function coverage: 24.8% Func Func+Child Hit Time % Time % Count Function --------------------------------------------------------- 1630.558 23.8 3909.059 57.1 49152 CComplexMatrix::Multiply(class CComplexVector &,class CComplexVector const &) (matrix.obj) 1143.931 16.7 6371.031 93.0 49152 CMetaverse::CalculateGate(class CGate const *,class CComplexVector &,class CComplexVector &,class CComplexVector &,int) (metaverse.obj) 870.876 12.7 870.876 12.7 1146910 CComplexVector::Length(void) (quantumdoc.obj) 762.162 11.1 762.162 11.1 688141 CComplexVector::operator[](int) (gate.obj) 542.868 7.9 678.331 9.9 196608 operator*(class CComplex const &,class CComplex const &) (matrix.obj) 291.903 4.3 291.903 4.3 409604 CComplexVector::operator[](int) (matrix.obj) 223.190 3.3 223.190 3.3 196608 CComplex::operator+=(class CComplex const &) (matrix.obj) 188.697 2.8 188.697 2.8 196728 CInputOutputGate::OutputPins(void) (gate.obj) 186.764 2.7 186.764 2.7 196608 CComplexMatrix::operator[](int) (matrix.obj) 144.193 2.1 144.193 2.1 204934 CComplex::CComplex(double,double) (matrix.obj) 139.628 2.0 6584.112 96.1 1 CMetaverse::SimulateCircuitSimply(class CComplexVector &,class CCircuit *) (metaverse.obj) 139.529 2.0 139.529 2.0 196932 CInputOutputGate::InputPins(void) (gate.obj) 77.282 1.1 77.282 1.1 49260 CInputOutputGate::InputPin(int) (gate.obj) 63.551 0.9 63.551 0.9 102497 CComplex::operator=(double const &) (matrix.obj) 59.052 0.9 59.052 0.9 6844 CQList::GrowTo(int) (gategroup.obj) 56.393 0.8 3965.452 57.9 49152 CInputOutputGate::CalcOutput(class CComplexVector &,class CComplexVector const *) (gate.obj) 54.391 0.8 54.391 0.8 98334 CPin::BitNumber(void) (gate.obj) 48.850 0.7 48.850 0.7 49152 CComplexMatrix::Columns(void) (gate.obj) 43.723 0.6 43.723 0.6 2404 CQList::~CQList(void) (gategroup.obj) 43.106 0.6 71.950 1.1 2 CMetaverse::DumpAmplitdues(class CComplexVector const &,int) (metaverse.obj) 37.333 0.5 37.333 0.5 49176 CInputOutputGate::OutputPin(int) (gate.obj) 16.197 0.2 27.037 0.4 6528 CQList::Copy(class CQList const &) (gategroup.obj) 14.530 0.2 14.530 0.2 16386 CComplex::MagSquared(void) (matrix.obj) 11.498 0.2 11.498 0.2 20832 CQList::Length(void) (gategroup.obj) 5.476 0.1 5.476 0.1 12168 CQList::operator[](int) (gategroup.obj) 4.653 0.1 6.132 0.1 1128 operator==(class CQList const &,class CQList const &) (gategroup.obj) 4.353 0.1 14.927 0.2 1128 operator<(class CGateGroup const &,class CGateGroup const &) (gategroup.obj) 4.317 0.1 13.041 0.2 8312 CComplex::`default constructor closure'(void) (matrix.obj) 3.630 0.1 58.410 0.9 2208 CQList::CQList(class CQList const &) (gategroup.obj) 3.508 0.1 4.355 0.1 1704 CGateGroup::DependsOn(int) (gategroup.obj) 3.210 0.0 29.680 0.4 4320 CQList::operator=(class CQList const &) (gategroup.obj) 3.012 0.0 32.692 0.5 2160 CGateGroup::operator=(class CGateGroup const &) (gategroup.obj) 2.724 0.0 15.765 0.2 62 `vector constructor iterator'(void *,unsigned int,int,void (*)(void *)) (gate.obj) 2.303 0.0 12.207 0.2 13 CComplexVector::Copy(class CComplexVector const &) (matrix.obj) 2.105 0.0 6848.624 100.0 1 CQuantumDoc::QuantumWorkerThread(struct CQuantumDoc::Simdata *) (quantumdoc.obj) 1.807 0.0 147.156 2.1 1 CQList::Sort(void) (gategroup.obj) 1.604 0.0 45.327 0.7 1202 CGateGroup::~CGateGroup(void) (gategroup.obj) 1.426 0.0 2.504 0.0 24 CQuantumDoc::SimCallback(int,void *) (quantumdoc.obj) 1.388 0.0 5.173 0.1 2760 CGateGroup::NoDependsOn(void) (gategroup.obj) 1.386 0.0 1.649 0.0 48 CComplexVector::CComplexVector(int,int) (matrix.obj) 1.190 0.0 1.190 0.0 64 CComplexVector::Reset(void) (matrix.obj) 1.153 0.0 1.153 0.0 1896 CQList::Find(class CGate const * const &) (gategroup.obj) 1.079 0.0 1.079 0.0 24 CSimProgress::SetPos(int,int) (quantumdoc.obj) 1.064 0.0 59.474 0.9 1104 CGateGroup::CGateGroup(class CGateGroup const &) (gategroup.obj) 1.051 0.0 1.775 0.0 49 CComplexVector::Zero(void) (matrix.obj) 0.999 0.0 8.374 0.1 1 CComplexVector::SetLength(int,int) (matrix.obj) 0.520 0.0 0.520 0.0 4 operator<<(class ostream &,class CComplex const &) (matrix.obj) 0.412 0.0 6849.036 100.0 1 CQuantumDoc::SimThreadStart(void *) (quantumdoc.obj) 0.312 0.0 6846.515 100.0 1 CMetaverse::StartSimulation(class CCircuit *,int,int,void (*)(int,void *),void *) (metaverse.obj) 0.308 0.0 6.547 0.1 48 CQList::Find(class CGateGroup const &) (gategroup.obj) 0.266 0.0 2.985 0.0 49 CQList::GrowTo(int) (gategroup.obj) 0.251 0.0 0.539 0.0 1 CCircuit::IsValidQuantumCircuit(void) (circuit.obj) 0.251 0.0 0.593 0.0 120 CGateGroup::ComputeTransitiveEnclosure(class CGate *) (gategroup.obj) 0.236 0.0 167.971 2.5 1 CCircuit::OrderGates(void) (circuit.obj) 0.233 0.0 0.403 0.0 415 CCircuit::NumberOfGates(void) (quantumdoc.obj) 0.221 0.0 0.221 0.0 432 CQList::operator[](int) (metaverse.obj) 0.179 0.0 0.486 0.0 192 CCircuit::Gate(int) (metaverse.obj) 0.170 0.0 0.170 0.0 415 CQList::Length(void) (quantumdoc.obj) 0.163 0.0 6846.202 100.0 1 CMetaverse::Simulate(class CCircuit *,class CComplexVector &) (metaverse.obj) 0.163 0.0 4.946 0.1 196 CQList::CQList(int) (gategroup.obj) 0.158 0.0 0.158 0.0 48 CQList::Find(class CGate * const &) (circuit.obj) 0.128 0.0 0.374 0.0 120 CQList::operator+=(class CGate const * const &) (gategroup.obj) 0.117 0.0 0.117 0.0 96 CQList::Sort(void) (gategroup.obj) 0.111 0.0 0.166 0.0 120 CQList::Append(class CGate const * const &) (gategroup.obj) 0.110 0.0 0.294 0.0 1 CMetaverse::VerifyOutputGateConnections(class CCircuit *) (metaverse.obj) 0.107 0.0 5.054 0.1 98 CGateGroup::CGateGroup(void) (gategroup.obj) 0.106 0.0 6.239 0.1 1128 operator==(class CGateGroup const &,class CGateGroup const &) (gategroup.obj) 0.100 0.0 0.955 0.0 1 CMetaverse::SetInitialAmplitudes(class CComplexVector &,class CCircuit const *) (metaverse.obj) 0.063 0.0 0.874 0.0 48 CGateGroup::AddGate(class CGate *) (gategroup.obj) 0.054 0.0 0.054 0.0 156 CPin::ConnectedTo(void) (gate.obj) 0.054 0.0 0.054 0.0 12 operator==(class CComplex const &,class CComplex const &) (matrix.obj) 0.052 0.0 0.083 0.0 72 CPin::IsConnected(void) (gate.obj) 0.043 0.0 1.343 0.0 1 CGateGroup::`vector deleting destructor'(unsigned int) (gategroup.obj) 0.043 0.0 0.432 0.0 48 CQList::Append(class CGateGroup const &) (gategroup.obj) 0.041 0.0 0.158 0.0 48 CGateGroup::Sort(void) (gategroup.obj) 0.039 0.0 7.019 0.1 48 CQList::operator+=(class CGateGroup const &) (gategroup.obj) 0.035 0.0 2.434 0.0 48 CQList::operator[](int) (metaverse.obj) 0.034 0.0 0.034 0.0 84 CGate::InputPins(void) (gate.obj) 0.033 0.0 0.033 0.0 84 CPin::ParentGate(void) (gate.obj) 0.028 0.0 0.050 0.0 48 CQList::Append(class CGate * const &) (circuit.obj) 0.027 0.0 2.957 0.0 1 CQList::CQList(int) (metaverse.obj) 0.025 0.0 0.025 0.0 32 CCircuit::NumberOfInputBits(void) (quantumdoc.obj) 0.024 0.0 0.233 0.0 48 CQList::operator+=(class CGate * const &) (circuit.obj) 0.023 0.0 0.047 0.0 48 CGateGroup::Gate(int) (metaverse.obj) 0.023 0.0 0.023 0.0 48 CQList::GrowTo(int) (circuit.obj) 0.020 0.0 0.020 0.0 96 CSinkGate::InputPins(void) (gate.obj) 0.018 0.0 0.396 0.0 12 CStaticSource::CalcOutput(class CComplexVector const *) (gate.obj) 0.014 0.0 0.014 0.0 36 CSinkGate::InputPin(int) (gate.obj) 0.013 0.0 0.013 0.0 25 CCircuit::NumberOfOutputBits(void) (metaverse.obj) 0.012 0.0 1.199 0.0 60 CComplexVector::~CComplexVector(void) (matrix.obj) 0.011 0.0 0.011 0.0 18 CSourceGate::OutputPin(int) (gate.obj) 0.010 0.0 0.010 0.0 48 CSourceGate::OutputPins(void) (gate.obj) 0.008 0.0 0.008 0.0 2 ToBinary(char *,int,int) (metaverse.obj) 0.006 0.0 0.006 0.0 36 CGate::OutputPins(void) (gate.obj) 0.006 0.0 0.549 0.0 1 CMetaverse::VerifyCircuitSize(class CCircuit *) (metaverse.obj) 0.003 0.0 0.003 0.0 2 CComplex::operator+=(double const &) (matrix.obj) 0.003 0.0 0.377 0.0 12 CComplexVector::CComplexVector(class CComplexVector const &) (matrix.obj) 0.003 0.0 1.345 0.0 1 CQList::~CQList(void) (metaverse.obj) 0.002 0.0 0.002 0.0 1 CCircuit::GetCircuit(void) (quantumdoc.obj) 0.001 0.0 0.001 0.0 1 CCircuit::GetName(void) (quantumdoc.obj) 0.001 0.0 0.002 0.0 1 CCircuit::NumberOfProcessingGates(void) (quantumdoc.obj) 0.001 0.0 0.001 0.0 1 CCircuit::Ordered(void) (metaverse.obj) 0.001 0.0 11.833 0.2 1 CComplexVector::operator=(class CComplexVector const &) (matrix.obj) 0.000 0.0 0.001 0.0 1 CMetaverse::FreeAmplitudes(void) (metaverse.obj) 0.000 0.0 0.000 0.0 1 CQList::Empty(void) (circuit.obj)