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