Administrator
|
I'm serializing about 20MB of data with Fuel and it takes about 45 seconds. Is that normal? Can anything be done to speed things up?
Thanks!
Cheers,
Sean |
On Tue, Dec 8, 2015 at 7:42 PM, Sean P. DeNigris <[hidden email]> wrote: I'm serializing about 20MB of data with Fuel and it takes about 45 seconds. No, it's not. Can anything be done to speed things up? Can I reproduce it? If true, tell me exactly how (if you give me the image and tell me which VM you used, even better). Which stream are using? Did you profile it? Thanks! |
Administrator
|
Oh good! It happens consistently when I serialize via: FLSerializer serialize: anObject toFileNamed: aFileReference fullName. I can send you the image if necessary. I'll PM you if we can't figure it out. Not sure. I evaluated the above line in default Pharo 4.0. Does that answer it? - 41036 tallies, 41165 msec. **Tree** -------------------------------- Process: (40s) Morphic UI Process: nil -------------------------------- 90.0% {37035ms} FLSerialization>>run 78.1% {32149ms} FLSerialization>>instancesStep |75.4% {31038ms} FLPositive16SmallIntegerCluster(FLPrimitiveCluster)>>registerIndexesOn: | |65.4% {26932ms} OrderedCollection(Collection)>>asIdentitySet | | |65.4% {26932ms} IdentitySet(Collection)>>addAll: | | | 64.2% {26438ms} IdentitySet(Set)>>add: | | | |63.7% {26217ms} IdentitySet>>scanFor: | | | | 63.5% {26133ms} primitives | | | 1.1% {444ms} primitives | |10.0% {4106ms} FLPositive16SmallIntegerCluster(FLIteratingCluster)>>registerIndexesOn: | | 5.6% {2309ms} IdentitySet(Set)>>do: | | 4.2% {1720ms} FLLargeIdentityDictionary>>at:put: | | 4.2% {1716ms} primitives |1.7% {706ms} FLVariableObjectCluster(FLIteratingCluster)>>registerIndexesOn: | 1.6% {679ms} FLLargeIdentityDictionary>>at:put: 11.9% {4884ms} FLSerialization>>referencesStep 11.0% {4546ms} FLDictionaryCollectionCluster(FLAbstractCollectionCluster)>>serializeReferencesStepWith: 11.0% {4537ms} FLDictionaryCollectionCluster>>serializeReferencesOf:with: 8.2% {3383ms} FLEncoder>>encodeReferenceTo: |6.9% {2846ms} FLLargeIdentityDictionary>>at:ifAbsent: | |6.9% {2832ms} primitives |1.3% {525ms} FLIndexStream>>nextIndexPut: 2.3% {951ms} OrderedCollection(SequenceableCollection)>>allButFirst 2.3% {951ms} OrderedCollection(SequenceableCollection)>>allButFirst: 2.3% {946ms} OrderedCollection>>copyFrom:to: 2.3% {946ms} OrderedCollection>>postCopyFrom:to: 2.3% {935ms} primitives 8.8% {3641ms} FLAnalysis>>run 7.7% {3154ms} FLAnalysis>>mapAndTrace: |7.6% {3130ms} FLLightGlobalMapper>>mapAndTrace: | 7.1% {2925ms} FLLightGeneralMapper>>mapAndTrace: | 3.6% {1467ms} Dictionary>>fuelAccept: | |3.6% {1467ms} FLLightGeneralMapper>>visitDictionary: | | 3.6% {1467ms} FLLightGeneralMapper(FLMapper)>>mapAndTraceByObjectClass:to: | | 3.4% {1411ms} FLDictionaryCollectionCluster(FLIteratingCluster)>>add:traceWith: | | 2.4% {1005ms} FLDictionaryCollectionCluster(FLIteratingCluster)>>addReferenceFrom:to: | | 1.8% {754ms} FLLargeIdentityDictionary>>at:ifAbsentPut: | | 1.2% {483ms} FLLargeIdentityDictionary>>at:ifAbsent: | 1.6% {678ms} SmallInteger>>fuelAccept: | |1.6% {675ms} FLLightGeneralMapper>>visitSmallInteger: | | 1.6% {672ms} FLLightGeneralMapper(FLMapper)>>mapAndTraceByClusterName:to: | | 1.3% {516ms} FLLightGeneralMapper(FLMapper)>>clusterKeyedByClusterName: | | 1.2% {514ms} FLLightGeneralMapper(FLMapper)>>clusterKeyedByClusterName:factory: | | 1.2% {475ms} FLLightGeneralMapper(FLMapper)>>clusterInstanceOf:keyInBucket:factory: | | 1.1% {471ms} IdentityDictionary(Dictionary)>>at:ifAbsentPut: | | 1.0% {425ms} primitives | 1.3% {528ms} ByteString>>fuelAccept: | 1.2% {511ms} FLLightGeneralMapper>>visitHookPrimitive: | 1.2% {507ms} FLLightGeneralMapper(FLMapper)>>mapAndTraceByObjectClass:to: | 1.2% {476ms} FLLightGeneralMapper(FLMapper)>>clusterKeyedByObjectClass:class: | 1.1% {457ms} FLLightGeneralMapper(FLMapper)>>clusterInstanceOf:keyInBucket:factory: 1.1% {455ms} primitives **Leaves** 63.6% {26195ms} IdentitySet>>scanFor: 8.9% {3667ms} FLLargeIdentityDictionary>>at:ifAbsent: 5.9% {2434ms} FLLargeIdentityDictionary>>at:put: 5.9% {2419ms} IdentitySet(Set)>>do: 2.3% {935ms} OrderedCollection>>postCopyFrom:to: 1.4% {581ms} IdentityDictionary(Dictionary)>>at:ifAbsentPut: 1.1% {455ms} FLAnalysis>>run 1.1% {444ms} IdentitySet(Collection)>>addAll: **Memory** old +43,659,188 bytes young +3,051,820 bytes used +46,711,008 bytes free -3,959,904 bytes **GCs** full 8 totalling 2,909ms (7.0% uptime), avg 364.0ms incr 1006 totalling 2,522ms (6.0% uptime), avg 3.0ms tenures 205 (avg 4 GCs/tenure) root table 0 overflows
Cheers,
Sean |
Free forum by Nabble | Edit this page |