prep /nologo /om /ft /SF CQuantumDoc::SimThreadStart "D:\users\jon\quantum\Release\quantum" profile /nologo /nc "D:\users\jon\quantum\Release\quantum" prep /nologo /m "D:\users\jon\quantum\Release\quantum" plist /nologo "D:\users\jon\quantum\Release\quantum" Profile: Function timing, sorted by time Date: Fri May 16 17:42:57 1997 Program Statistics ------------------ Command line at 1997 May 16 17:38: "D:\users\jon\quantum\Release\quantum" Start function: CQuantumDoc::SimThreadStart(void *) Total time: 13726.780 millisecond Time outside of functions: 5.697 millisecond Call depth: 17 Total functions: 354 Total hits: 8149435 Function coverage: 18.1% Overhead Calculated 7 Overhead Average 7 Module Statistics for quantum.exe --------------------------------- Time in module: 13721.084 millisecond Percent of time in module: 100.0% Functions in module: 354 Hits in module: 8149435 Module function coverage: 18.1% Func Func+Child Hit Time % Time % Count Function --------------------------------------------------------- 6474.722 47.2 12856.680 93.7 516096 CMetaverse::CalculateGate(class CGate const *,class CComplexVector &,class CComplexVector &,class CComplexVector &,int) (metaverse.obj) 2635.585 19.2 2635.585 19.2 516096 CComplexMatrix::Multiply(class CComplexVector &,class CComplexVector const &) (matrix.obj) 1267.994 9.2 1267.994 9.2 2523430 CInputOutputGate::OutputPins(void) (gate.obj) 1167.716 8.5 1167.716 8.5 2528016 CInputOutputGate::InputPins(void) (gate.obj) 600.726 4.4 3236.312 23.6 516096 CInputOutputGate::CalcOutput(class CComplexVector &,class CComplexVector const *) (gate.obj) 540.658 3.9 13421.714 97.8 5 CMetaverse::SimulateSubGroup(class CComplexVector &,class CCircuit *,class CGateGroup const &,int &) (metaverse.obj) 363.801 2.7 363.801 2.7 688212 CInputOutputGate::OutputPin(int) (gate.obj) 361.501 2.6 361.501 2.6 690694 CInputOutputGate::InputPin(int) (gate.obj) 57.112 0.4 111.545 0.8 2 CMetaverse::DumpAmplitdues(class CComplexVector const &,int) (metaverse.obj) 54.152 0.4 54.152 0.4 65537 CComplex::MagSquared(void) (matrix.obj) 30.282 0.2 30.282 0.2 34012 CQList::operator=(class CQList const &) (metaverse.obj) 28.359 0.2 43.634 0.3 2380 CGateGroup::ComputeTransitiveEnclosure(class CGate *) (gategroup.obj) 26.637 0.2 26.637 0.2 16721 CComplex::operator=(double const &) (matrix.obj) 14.710 0.1 49.842 0.4 1 CCircuit::OrderGates(void) (circuit.obj) 13.399 0.1 13.399 0.1 9153 operator<(class CGateGroup const &,class CGateGroup const &) (gategroup.obj) 12.446 0.1 12.446 0.1 911 CGateGroup::CGateGroup(void) (metaverse.obj) 12.431 0.1 53.817 0.4 141 CComplexVector::SetLength(int,int) (matrix.obj) 10.536 0.1 57.321 0.4 9 CGateGroup::ExpandGatesToSeperateGroups(class CQList &) (gategroup.obj) 7.998 0.1 7.998 0.1 2462 CQList::~CQList(void) (metaverse.obj) 7.726 0.1 7.726 0.1 16748 CComplex::`default constructor closure'(void) (matrix.obj) 7.604 0.1 7.604 0.1 9080 CGateGroup::operator=(class CGateGroup const &) (metaverse.obj) 7.018 0.1 33.654 0.2 141 CComplexVector::Zero(void) (matrix.obj) 6.414 0.0 6.414 0.0 9153 operator==(class CGateGroup const &,class CGateGroup const &) (gategroup.obj) 3.704 0.0 11.701 0.1 1231 CGateGroup::~CGateGroup(void) (metaverse.obj) 1.653 0.0 1.653 0.0 516 CQList::GrowTo(int) (metaverse.obj) 0.722 0.0 8.833 0.1 321 CQList::GrowTo(int) (metaverse.obj) 0.688 0.0 13720.885 100.0 1 CQuantumDoc::QuantumWorkerThread(struct CQuantumDoc::Simdata *) (quantumdoc.obj) 0.650 0.0 0.650 0.0 154 CComplexVector::~CComplexVector(void) (matrix.obj) 0.570 0.0 0.570 0.0 1 CGateGroup::Sort(void) (gategroup.obj) 0.512 0.0 44.146 0.3 518 CGateGroup::AddGate(class CGate *) (gategroup.obj) 0.373 0.0 82.965 0.6 4 CMetaverse::PartitionGroup(class CGateGroup const &,int,int,class CQList &) (metaverse.obj) 0.370 0.0 0.437 0.0 5 CQuantumDoc::SimCallback(int,void *) (quantumdoc.obj) 0.294 0.0 0.352 0.0 1 CCircuit::IsValidQuantumCircuit(void) (circuit.obj) 0.279 0.0 0.279 0.0 3 operator<<(class ostream &,class CComplex const &) (matrix.obj) 0.246 0.0 13720.186 100.0 1 CMetaverse::StartSimulation(class CCircuit *,int,int,void (*)(int,void *),void *) (metaverse.obj) 0.196 0.0 13510.417 98.5 1 CMetaverse::SimulateCircuitEfficiently(class CComplexVector &,class CCircuit *) (metaverse.obj) 0.191 0.0 0.191 0.0 14 CQList::CQList(int) (metaverse.obj) 0.174 0.0 13721.084 100.0 1 CQuantumDoc::SimThreadStart(void *) (quantumdoc.obj) 0.114 0.0 0.114 0.0 602 CGate::InputPins(void) (gate.obj) 0.103 0.0 0.103 0.0 8 CSingleLock::~CSingleLock(void) (quantumdoc.obj) 0.096 0.0 0.571 0.0 1 CMetaverse::SetInitialAmplitudes(class CComplexVector &,class CCircuit const *) (metaverse.obj) 0.094 0.0 13719.938 100.0 1 CMetaverse::Simulate(class CCircuit *,class CComplexVector &) (metaverse.obj) 0.094 0.0 13481.595 98.3 3 CMetaverse::SimulateGroup(class CComplexVector &,class CCircuit *,class CGateGroup const &,int &) (metaverse.obj) 0.075 0.0 0.085 0.0 1 CMetaverse::VerifyOutputGateConnections(class CCircuit *) (metaverse.obj) 0.070 0.0 0.080 0.0 14 CComplexVector::Copy(class CComplexVector const &) (matrix.obj) 0.059 0.0 0.059 0.0 98 CQList::GrowTo(int) (circuit.obj) 0.051 0.0 0.051 0.0 68 CQList::GrowTo(int) (metaverse.obj) 0.030 0.0 0.030 0.0 8 CQList::~CQList(void) (metaverse.obj) 0.023 0.0 0.023 0.0 112 CSinkGate::InputPins(void) (gate.obj) 0.019 0.0 0.106 0.0 14 CStaticSource::CalcOutput(class CComplexVector const *) (gate.obj) 0.019 0.0 0.019 0.0 14 operator==(class CComplex const &,class CComplex const &) (matrix.obj) 0.018 0.0 0.018 0.0 297 CComplexVector::Reset(void) (matrix.obj) 0.018 0.0 0.018 0.0 140 CComplexVector::CComplexVector(void) (matrix.obj) 0.017 0.0 7.090 0.1 14 CQList::~CQList(void) (metaverse.obj) 0.008 0.0 0.087 0.0 14 CComplexVector::CComplexVector(class CComplexVector const &) (matrix.obj) 0.008 0.0 0.008 0.0 42 CSinkGate::InputPin(int) (gate.obj) 0.007 0.0 0.007 0.0 20 CSourceGate::OutputPin(int) (gate.obj) 0.004 0.0 0.004 0.0 42 CGate::OutputPins(void) (gate.obj) 0.004 0.0 0.356 0.0 1 CMetaverse::VerifyCircuitSize(class CCircuit *) (metaverse.obj) 0.002 0.0 0.002 0.0 8 CQList::Find(int const &) (metaverse.obj) 0.002 0.0 0.002 0.0 1 ToBinary(char *,int,int) (metaverse.obj) 0.000 0.0 0.000 0.0 1 CComplex::operator+=(double const &) (matrix.obj) 0.000 0.0 0.002 0.0 1 CMetaverse::FreeAmplitudes(void) (metaverse.obj) 0.000 0.0 0.000 0.0 42 CSourceGate::OutputPins(void) (gate.obj)