Producing less garbage speeds it up
MooseModel>addNoAnnounce: anElement self entityStorage add: anElement. self privateState flushGroups. anElement privateSetMooseModel: self. ^anElement
MooseModel>silentlyAddAll: entities entities do: [:each | self addNoAnnounce: each]. ^entities
- 66218 tallies, 66280 msec.
**Tree** -------------------------------- Process: (40s) Morphic UI Process: nil -------------------------------- 44.9% {29736ms} MooseModel class>>importFrom: |44.8% {29722ms} MooseModel class>>importFrom:withMetamodel: | 44.8% {29714ms} MSEImporter(FMImporter)>>run | 44.8% {29714ms} FMMSEParser>>run | 44.8% {29714ms} FMMSEParser>>basicRun | 44.8% {29714ms} FMMSEParser>>Document | 44.5% {29506ms} FMMSEParser>>Element | 31.3% {20727ms} FMMSEParser>>Attribute | |11.8% {7827ms} MSEImporter(FMImporter)>>endAttribute: | | |11.8% {7819ms} FMFutureElement>>endAttribute: | | | 11.8% {7811ms} FMFutureAttribute>>endAttribute: | | | 11.8% {7795ms} FMFutureAttribute>>maybeEnd | | | 6.4% {4250ms} FM3PropertyDescription>>setOn:values: | | | |6.3% {4154ms} FAMIXFileAnchor(Object)>>mmSetProperty:to: | | | | 6.2% {4130ms} FM3PropertyDescription>>setOn:rawValue: | | | | 1.8% {1175ms} FAMIXLocalVariable(FAMIXStructuralEntity)>>declaredType: | | | | |1.8% {1171ms} FMMultivalueLink class>>on:update:from:to: | | | | | 1.8% {1167ms} FMMultivalueLink>>unsafeAdd: | | | | | 1.7% {1159ms} OrderedCollection(SequenceableCollection)>>includes: | | | | | 1.7% {1159ms} OrderedCollection(SequenceableCollection)>>indexOf: | | | | | 1.7% {1159ms} OrderedCollection(SequenceableCollection)>>indexOf:ifAbsent: | | | | | 1.7% {1159ms} OrderedCollection(SequenceableCollection)>>indexOf:startingAt:ifAbsent: | | | | | 1.7% {1107ms} primitives | | | | 1.4% {951ms} FAMIXMethod(FAMIXBehaviouralEntity)>>declaredType: | | | | |1.4% {951ms} FMMultivalueLink class>>on:update:from:to: | | | | | 1.4% {945ms} FMMultivalueLink>>unsafeAdd: | | | | | 1.4% {939ms} OrderedCollection(SequenceableCollection)>>includes: | | | | | 1.4% {939ms} OrderedCollection(SequenceableCollection)>>indexOf: | | | | | 1.4% {939ms} OrderedCollection(SequenceableCollection)>>indexOf:ifAbsent: | | | | | 1.4% {939ms} OrderedCollection(SequenceableCollection)>>indexOf:startingAt:ifAbsent: | | | | | 1.3% {839ms} primitives | | | | 1.3% {879ms} FAMIXInvocation>>receiver: | | | | 1.3% {879ms} FMMultivalueLink class>>on:update:from:to: | | | | 1.3% {831ms} FMMultivalueLink>>unsafeAdd: | | | | 1.2% {817ms} OrderedCollection(SequenceableCollection)>>includes: | | | | 1.2% {811ms} OrderedCollection(SequenceableCollection)>>indexOf: | | | | 1.2% {811ms} OrderedCollection(SequenceableCollection)>>indexOf:ifAbsent: | | | | 1.2% {811ms} OrderedCollection(SequenceableCollection)>>indexOf:startingAt:ifAbsent: | | | | 1.1% {723ms} primitives | | | 5.3% {3489ms} FM3MetaDescription>>attributeNamed:ifAbsent: | | | 1.9% {1291ms} FMMultivalueLink(Collection)>>detect:ifNone: | | | |1.6% {1089ms} FMMultivalueLink(Collection)>>detect:ifFound:ifNone: | | | | 1.3% {861ms} FMMultivalueLink>>do: | | | | 1.1% {743ms} primitives | | | 1.9% {1289ms} FM3MetaDescription>>attributeNamed:ifAbsent: | |7.8% {5141ms} FMMSEParser>>tNAME | | |6.2% {4122ms} Character>>isAlphaNumeric | | | 4.8% {3201ms} Character>>isLetter | | | |4.4% {2913ms} Character>>characterSet | | | | 4.3% {2863ms} EncodedCharSet class>>charsetAt: | | | | 4.2% {2811ms} Array(SequenceableCollection)>>at:ifAbsent: | | | | 4.2% {2769ms} primitives | | | 1.3% {847ms} Character>>isDigit | | | 1.2% {763ms} Character>>characterSet | | | 1.1% {755ms} EncodedCharSet class>>charsetAt: | | | 1.1% {751ms} Array(SequenceableCollection)>>at:ifAbsent: | | | 1.1% {745ms} primitives | |7.6% {5043ms} FMMSEParser>>Value | | |4.7% {3107ms} FMMSEParser>>Reference | | | |3.0% {1958ms} FMMSEParser>>Identifier | | | | |1.9% {1275ms} Character>>isDigit | | | | | 1.7% {1127ms} Character>>characterSet | | | | | 1.7% {1111ms} EncodedCharSet class>>charsetAt: | | | | | 1.6% {1093ms} Array(SequenceableCollection)>>at:ifAbsent: | | | | | 1.6% {1071ms} primitives | | | |1.1% {721ms} MSEImporter(FMImporter)>>referenceNumber: | | | | 1.1% {715ms} FMFutureAttribute>>referenceNumber: | | |2.4% {1610ms} FMMSEParser>>Primitive | | | 1.9% {1233ms} FMMSEParser>>Number | | | 1.1% {741ms} Character>>isDigit | |3.2% {2150ms} MSEImporter(FMImporter)>>beginAttribute: | | 3.2% {2126ms} FMFutureElement>>beginAttribute: | | 2.7% {1806ms} PhexMatcher>>beTrue | | 2.6% {1756ms} PhexMatcher>>true | | 2.5% {1678ms} PhexMatcher>>expectedUnknownMessageToReturn: | | 1.4% {925ms} Array(Collection)>>copyWithout: | | |1.3% {891ms} Array(SequenceableCollection)>>reject: | | 1.1% {721ms} PhexMatcher>>expect:describeShould:describeShouldNot: | 7.9% {5213ms} FMMSEParser>>Serial | |6.4% {4236ms} MSEImporter(FMImporter)>>serial: | | |6.4% {4226ms} FMFutureElement>>serial: | | | 6.4% {4222ms} MSEImporter(FMImporter)>>assign:to: | | | 5.5% {3617ms} FMDanglingReference>>resolve: | | | 4.5% {2979ms} FMFutureAttribute>>maybeEnd | | | 2.7% {1760ms} FM3PropertyDescription>>setOn:values: | | | |2.5% {1688ms} FAMIXInvocation(Object)>>mmSetProperty:to: | | | | 2.5% {1656ms} FM3PropertyDescription>>setOn:rawValue: | | | | 1.1% {759ms} FAMIXLocalVariable(FAMIXStructuralEntity)>>declaredType: | | | | 1.1% {759ms} FMMultivalueLink class>>on:update:from:to: | | | | 1.1% {739ms} FMMultivalueLink>>unsafeAdd: | | | | 1.1% {739ms} OrderedCollection(SequenceableCollection)>>includes: | | | | 1.1% {739ms} OrderedCollection(SequenceableCollection)>>indexOf: | | | | 1.1% {739ms} OrderedCollection(SequenceableCollection)>>indexOf:ifAbsent: | | | | 1.1% {739ms} OrderedCollection(SequenceableCollection)>>indexOf:startingAt:ifAbsent: | | | 1.8% {1187ms} FM3MetaDescription>>attributeNamed:ifAbsent: | |1.2% {819ms} FMMSEParser>>Identifier | 2.5% {1672ms} FMMSEParser>>tFULLNAME | |1.9% {1275ms} Character>>isAlphaNumeric | | 1.7% {1105ms} Character>>isLetter | | 1.5% {991ms} Character>>characterSet | | 1.5% {977ms} EncodedCharSet class>>charsetAt: | | 1.4% {961ms} Array(SequenceableCollection)>>at:ifAbsent: | | 1.4% {937ms} primitives | 2.4% {1565ms} MSEImporter(FMImporter)>>beginElement: | 2.3% {1523ms} FMFutureElement class>>with:name: | 2.3% {1513ms} FMFutureElement>>with:name: | 2.1% {1361ms} FM3MetaDescription>>createInstance | 2.0% {1313ms} FAMIXInvocation class(Behavior)>>new 1.2% {763ms} MooseModel>>silentlyAddAll: 1.1% {749ms} MooseModel>>addNoAnnounce: -------------------------------- Process: other processes -------------------------------- 43.4% {28751ms} InputEventFetcher>>eventLoop 43.4% {28751ms} InputEventFetcher>>waitForInput 10.1% {6724ms} Semaphore>>waitTimeoutMSecs: 10.1% {6724ms} DelayWaitTimeout>>wait **Leaves** 43.4% {28751ms} InputEventFetcher>>waitForInput 11.3% {7489ms} Array(SequenceableCollection)>>at:ifAbsent: 10.1% {6724ms} DelayWaitTimeout>>wait 5.5% {3615ms} OrderedCollection(SequenceableCollection)>>indexOf:startingAt:ifAbsent: 1.9% {1273ms} ByteSymbol(String)>>= 1.8% {1175ms} FMMultivalueLink>>do: 1.6% {1073ms} PhexMatcher>>expect:describeShould:describeShouldNot: 1.2% {787ms} WriteStream>>nextPut: 1.0% {677ms} UndefinedObject(ProtoObject)>>~~ 1.0% {671ms} FMMultivalueLink(Collection)>>detect:ifFound:ifNone:
**Memory** old +167,772,160 bytes young -167,290,864 bytes used +481,296 bytes free +167,290,864 bytes
**GCs** full 9 totalling 36,946ms (56.0% uptime), avg 4105.0ms incr 3179 totalling 13,809ms (21.0% uptime), avg 4.0ms tenures 7,162,840 (avg 0 GCs/tenure) root table 0 overflows