[ENH]PackagePaneBrowser speedUp
Torge Husfeldt
jean-jacques.gelee at gmx.de
Wed Apr 10 09:43:12 UTC 2002
Hi list,
I hope i am not reinventing the wheel or working on a dead branch, but
the following cs makes package browsers on my system much more useable.
>From Preamble:
Change Set: PackageBrowserSpeedup-th
Date: 10 April 2002
Author: Torge Husfeldt
Speeds up PackageBrowsers quite a bit
(at least on slow machines). You will notice that a slow system is
inaccesable for a few miliseconds every second. This is due to
superfluous computation being made in the step method of
PackageBrowsers. I inserted a cache for two really frequently computed
values and made sure they don't break anything. This makes a great
difference in the feel of the whole mophic sytem when a Package Browser
is active.
This should really work. A hint that my updating ctrieria are correct
can be found in the inline comment of
ClassOrganizer>>renameCategory:toBe:
I attached also the spy results to prove the speedup.
Though the _feel_ is much more informative to me than these numbers.
Squeak on,
Torge
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PackageBrowserSpeedup-th.3.cs
Type: application/x-squeak-source
Size: 3357 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20020410/2bd8b02f/PackageBrowserSpeedup-th.3.sts
-------------- next part --------------
- 647 tallies, 12470 msec.
**Tree**
99.8% {12445ms} PasteUpMorph>>doOneCycle
99.8% {12445ms} WorldState>>doOneCycleFor:
96.9% {12083ms} WorldState>>interCyclePause:
|96.9% {12083ms} Delay>>wait
| 96.8% {12071ms} primitives
2.9% {362ms} WorldState>>doOneCycleNowFor:
**Leaves**
96.8% {12071ms} Delay>>wait
**Memory**
old +0 bytes
young +161,340 bytes
used +161,340 bytes
free -161,340 bytes
**GCs**
full 0 totalling 0ms (0.0% uptime)
incr 24 totalling 75ms (1.0% uptime), avg 3.0ms
tenures 0
root table 0 overflows
-------------- next part --------------
- 645 tallies, 12201 msec.
**Tree**
100.0% {12201ms} PasteUpMorph>>doOneCycle
100.0% {12201ms} WorldState>>doOneCycleFor:
66.8% {8150ms} WorldState>>interCyclePause:
|66.5% {8114ms} Delay>>wait
33.2% {4051ms} WorldState>>doOneCycleNowFor:
29.5% {3599ms} PasteUpMorph>>runStepMethods
29.5% {3599ms} WorldState>>runStepMethodsIn:
29.5% {3599ms} WorldState>>runLocalStepMethodsIn:
29.5% {3599ms} StepMessage(MorphicAlarm)>>value:
29.5% {3599ms} SystemWindow>>stepAt:
29.5% {3599ms} PackagePaneBrowser(Object)>>stepAt:in:
29.5% {3599ms} PackagePaneBrowser(CodeHolder)>>stepIn:
29.3% {3575ms} PackagePaneBrowser(CodeHolder)>>updateListsAndCodeIn:
14.7% {1794ms} PackagePaneBrowser(CodeHolder)>>updateCodePaneIfNeeded
|14.7% {1794ms} PackagePaneBrowser(CodeHolder)>>didCodeChangeElsewhere
| 14.7% {1794ms} PackagePaneBrowser(Browser)>>selectedClassOrMetaClass
| 14.7% {1794ms} PackagePaneBrowser>>selectedClass
| 7.4% {903ms} PackagePaneBrowser(Browser)>>selectedClassName
| |7.4% {903ms} PackagePaneBrowser>>classList
[7.4% {903ms} PackagePaneBrowser>>selectedSystemCategoryName
[ 3.9% {476ms} PackagePaneBrowser>>systemCategoryList
[ |3.4% {415ms} PackagePaneBrowser>>package
[ | 3.4% {415ms} PackagePaneBrowser>>packageList
[ 3.6% {439ms} PackagePaneBrowser>>package
[ 3.6% {439ms} PackagePaneBrowser>>packageList
| 7.3% {891ms} PackagePaneBrowser>>selectedSystemCategoryName
| 3.9% {476ms} PackagePaneBrowser>>systemCategoryList
[3.3% {403ms} PackagePaneBrowser>>package
[ 3.3% {403ms} PackagePaneBrowser>>packageList
| 3.4% {415ms} PackagePaneBrowser>>package
[3.4% {415ms} PackagePaneBrowser>>packageList
14.6% {1781ms} PackagePaneBrowser(Object)>>updateListsAndCodeIn:
14.6% {1781ms} PluggableListMorph>>verifyContents
14.4% {1757ms} PluggableListMorph>>getList
7.3% {891ms} PackagePaneBrowser>>classList
|7.3% {891ms} PackagePaneBrowser>>selectedSystemCategoryName
| 4.0% {488ms} PackagePaneBrowser>>systemCategoryList
[3.6% {439ms} PackagePaneBrowser>>package
[ 3.6% {439ms} PackagePaneBrowser>>packageList
| 3.3% {403ms} PackagePaneBrowser>>package
[3.3% {403ms} PackagePaneBrowser>>packageList
3.9% {476ms} PackagePaneBrowser>>systemCategoryList
|3.3% {403ms} PackagePaneBrowser>>package
| 3.3% {403ms} PackagePaneBrowser>>packageList
3.3% {403ms} PackagePaneBrowser>>packageList
**Leaves**
66.5% {8114ms} Delay>>wait
9.6% {1171ms} Symbol>>asString
4.0% {488ms} String class>>stringHash:initialHash:
2.2% {268ms} String(SequenceableCollection)>>copyFrom:to:
**Memory**
old +0 bytes
young +25,696 bytes
used +25,696 bytes
free -25,696 bytes
**GCs**
full 0 totalling 0ms (0.0% uptime)
incr 48 totalling 163ms (1.0% uptime), avg 3.0ms
tenures 0
root table 0 overflows
More information about the Squeak-dev
mailing list
|