reasons why VW 7.x may be slower than 3.0

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

reasons why VW 7.x may be slower than 3.0

Charles A. Monteiro-2
there is an apparent slower startup time for VW 7.x as compared to 3.0,  
this is based on the 7.x ported version of the 3.0 app and frankly is  
really only noticeable on an older machine which happens to be the machine  
my boss tests on :), this for what is basically a ported version, sure  
there are some mods but to me they don't account for the diffs.

So I'm wondering how "in tune" is 7.x to the newer Pentium architectures?  
As compared to a PIII. Also how in tune is it to versions of Windows. The  
machine in question is running Windows 2000.

If Eliot is listening, it would be nice to have something authoritative  
that I can show people here.

thanks

--
Charles A. Monteiro
http://wiki.nycsmalltalk.org
http://www.monteirosfusion.com
http://monteirofusion.blogspot.com

Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Joachim Geidel
Charles A. Monteiro schrieb am 08.03.2007 20:32:

> there is an apparent slower startup time for VW 7.x as compared to 3.0,
> this is based on the 7.x ported version of the 3.0 app and frankly is
> really only noticeable on an older machine which happens to be the
> machine my boss tests on :), this for what is basically a ported
> version, sure there are some mods but to me they don't account for the
> diffs.
>
> So I'm wondering how "in tune" is 7.x to the newer Pentium
> architectures? As compared to a PIII. Also how in tune is it to versions
> of Windows. The machine in question is running Windows 2000.

Hello Charles,

although I certainly don't know exactly about what has changed, I
somehow doubt that 7.x has longer startup times. It certainly was not my
impression when our project did the upgrade. However, there may be
reasons why your app starts up slower:

- Memory policy and ObjectMemory sizesAtStartUp:
The VM has changed quite a bit between 3.x and 7.x, becoming a lot
faster, and much more efficient in free list management. This may
require different settings of the MemoryPolicy parameters and the
sizesAtStartUp. Are they the same in the two versions? Have there been
changes in the MemoryPolicy code? E.g., it may slow down startup if the
preferredGrowthIncrement and the growthRegimeUpperBound are too low, or
if NewSpace is too small and many temporary objects are created.

- In 7.x, the image may be saved compressed - decompression of the image
may add to the startup time.

- Did you actually measure if the modifications between the two versions
really don't account for the difference? Sometimes, I am surprised when
my performance optimizations slow down the application... ;-)

- Is there anything in the 7.x image which wasn't in 3.x? Maybe a
SubSystem which does a setup which didn't have an equivalent in 3.x?

Best regards,
Joachim Geidel

Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Charles A. Monteiro-2
well, it is true that the image is saved compressed and into a single exe  
, should have thought about that. The memory policies are the same in both  
versions but if anything 3.0 growed memory by a good bit since we do data  
caching at startup i.e. it would not be an issue of settings being to "low"

I have looked at the code differences. Of course, 7.x has now the notion  
of subsystem startup and we have a user subsystem but I am not talking  
that into account, our user subsystem is forced to start last and so I'm  
actually measuring the time up to that event.

Again, not that palpable of an issue on a modern machine.

I guess that part of the issue is that image has bloated , some of that is  
because I refuse to "strip" and so I therefore I compress. Our image with  
everything loaded in i.e. when I don't do dynamic loading of parcels is  
about 8.3 mb and I thing uncompressed that probably puts into the 17mb.  
Yeah, probably image size is the one main culprit.

thanks

-Charles


On Thu, 08 Mar 2007 15:47:09 -0500, Joachim Geidel  
<[hidden email]> wrote:

> Charles A. Monteiro schrieb am 08.03.2007 20:32:
>> there is an apparent slower startup time for VW 7.x as compared to 3.0,
>> this is based on the 7.x ported version of the 3.0 app and frankly is
>> really only noticeable on an older machine which happens to be the
>> machine my boss tests on :), this for what is basically a ported
>> version, sure there are some mods but to me they don't account for the
>> diffs.
>>
>> So I'm wondering how "in tune" is 7.x to the newer Pentium
>> architectures? As compared to a PIII. Also how in tune is it to versions
>> of Windows. The machine in question is running Windows 2000.
>
> Hello Charles,
>
> although I certainly don't know exactly about what has changed, I
> somehow doubt that 7.x has longer startup times. It certainly was not my
> impression when our project did the upgrade. However, there may be
> reasons why your app starts up slower:
>
> - Memory policy and ObjectMemory sizesAtStartUp:
> The VM has changed quite a bit between 3.x and 7.x, becoming a lot
> faster, and much more efficient in free list management. This may
> require different settings of the MemoryPolicy parameters and the
> sizesAtStartUp. Are they the same in the two versions? Have there been
> changes in the MemoryPolicy code? E.g., it may slow down startup if the
> preferredGrowthIncrement and the growthRegimeUpperBound are too low, or
> if NewSpace is too small and many temporary objects are created.
>
> - In 7.x, the image may be saved compressed - decompression of the image
> may add to the startup time.
>
> - Did you actually measure if the modifications between the two versions
> really don't account for the difference? Sometimes, I am surprised when
> my performance optimizations slow down the application... ;-)
>
> - Is there anything in the 7.x image which wasn't in 3.x? Maybe a
> SubSystem which does a setup which didn't have an equivalent in 3.x?
>
> Best regards,
> Joachim Geidel



--
Charles A. Monteiro
http://wiki.nycsmalltalk.org
http://www.monteirosfusion.com
http://monteirofusion.blogspot.com

Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Charles A. Monteiro-2
In reply to this post by Charles A. Monteiro-2
the way we handle that is we don't use the splash screen but pop our own  
art with a little progress bar thingy , really pretty snappy :)

On Thu, 08 Mar 2007 15:39:56 -0500, <[hidden email]> wrote:

> Maybe it is related to my request in the 5i time frame that eliot slow  
> down startup so we could enjoy the nice splashscreen art at the time :)
> Bruce
>
> ---- "Charles A. Monteiro" <[hidden email]> wrote:
>> there is an apparent slower startup time for VW 7.x as compared to 3.0,
>> this is based on the 7.x ported version of the 3.0 app and frankly is
>> really only noticeable on an older machine which happens to be the  
>> machine
>> my boss tests on :), this for what is basically a ported version, sure
>> there are some mods but to me they don't account for the diffs.
>>
>> So I'm wondering how "in tune" is 7.x to the newer Pentium  
>> architectures?
>> As compared to a PIII. Also how in tune is it to versions of Windows.  
>> The
>> machine in question is running Windows 2000.
>>
>> If Eliot is listening, it would be nice to have something authoritative
>> that I can show people here.
>>
>> thanks
>>
>> --
>> Charles A. Monteiro
>> http://wiki.nycsmalltalk.org
>> http://www.monteirosfusion.com
>> http://monteirofusion.blogspot.com
>>



--
Charles A. Monteiro
http://wiki.nycsmalltalk.org
http://www.monteirosfusion.com
http://monteirofusion.blogspot.com

Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Eliot Miranda-2
In reply to this post by Charles A. Monteiro-2


If Eliot is listening, it would be nice to have something authoritative
that I can show people here.


I am no longer the authority on anything VisualWorks :)

Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Charles A. Monteiro-2
:(


On Fri, 09 Mar 2007 13:46:04 -0500, Eliot Miranda  
<[hidden email]> wrote:

>>
>> If Eliot is listening, it would be nice to have something authoritative
>> that I can show people here.
>
>
>
> I am no longer the authority on anything VisualWorks :)



--
Charles A. Monteiro
http://wiki.nycsmalltalk.org
http://www.monteirosfusion.com
http://monteirofusion.blogspot.com

Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Mark Pirogovsky-3
In reply to this post by Charles A. Monteiro-2
Charles,
Image size could have a role there - 7.4 image out of box(without
anything of interest) is about 8 mb, while VW3.0 is about 3.5mb.
So the size  would explain some load performance.

Also with introduction of more things like subsystem, which do have
happen on the start up in the latest releases - the system has to
perform way more things, many more messages to dispatch and so on.

My observation that old (VW 3.0)UI runs in order of magnitude faster
then similar UI on the latest versions.  And I think that there is no
excuse for that.  New faster hardware just masks the inefficiency
problem, but it still be there

Charles A. Monteiro wrote:

> the way we handle that is we don't use the splash screen but pop our
> own  art with a little progress bar thingy , really pretty snappy :)

Can you share with us how you do that ?

>
>> Maybe it is related to my request in the 5i time frame that eliot
>> slow  down startup so we could enjoy the nice splashscreen art at the
>> time :)

Should we all look at the VM source for some "delays" then ?

>>> there is an apparent slower startup time for VW 7.x as compared to 3.0,
>>> this is based on the 7.x ported version of the 3.0 app and frankly is
>>> really only noticeable on an older machine which happens to be the  
>>> machine

I do test our application on the old PIII 1MHz pc - there I can see all
of the double redrawing and many other UI anomalies of our app. , which
are usually not noticeable on my 3MHz workstation.


>>> my boss tests on :), this for what is basically a ported version, sure
>>> there are some mods but to me they don't account for the diffs.
>>>
>>> So I'm wondering how "in tune" is 7.x to the newer Pentium  
>>> architectures?

I don't see it is a problem with the Processor architecture, If you run
your new and old environment on the same hardware.  It is more of an
inefficient Images bloat  problem.

--Mark

Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Mark Pirogovsky-3
In reply to this post by Charles A. Monteiro-2
It could be simple explanation for the startup performance.

I do remember reading a bit on what is happening on the startup with the
memory pointers.  The VM detects that if the platform it is starting on
is the same as platform it was saved on.  And if it is not then it does
some "swizzle" of the memory pointers.  I am a bit fuzzy on exact
details, but that may explain the slowness.  So if you build on let say
Latest AMD processor running XP  and then start it on old PIII with
win2k that swizzleing may take place.

What if you build your deployment on your boss PC and then compare ?

Just my 2c.

--Mark

Charles A. Monteiro wrote:

> well, it is true that the image is saved compressed and into a single
> exe  , should have thought about that. The memory policies are the same
> in both  versions but if anything 3.0 growed memory by a good bit since
> we do data  caching at startup i.e. it would not be an issue of settings
> being to "low"
>
> I have looked at the code differences. Of course, 7.x has now the
> notion  of subsystem startup and we have a user subsystem but I am not
> talking  that into account, our user subsystem is forced to start last
> and so I'm  actually measuring the time up to that event.
>
> Again, not that palpable of an issue on a modern machine.
>
> I guess that part of the issue is that image has bloated , some of that
> is  because I refuse to "strip" and so I therefore I compress. Our image
> with  everything loaded in i.e. when I don't do dynamic loading of
> parcels is  about 8.3 mb and I thing uncompressed that probably puts
> into the 17mb.  Yeah, probably image size is the one main culprit.
>
> thanks
>
> -Charles
>
>
> On Thu, 08 Mar 2007 15:47:09 -0500, Joachim Geidel  
> <[hidden email]> wrote:
>
>> Charles A. Monteiro schrieb am 08.03.2007 20:32:
>>
>>> there is an apparent slower startup time for VW 7.x as compared to 3.0,
>>> this is based on the 7.x ported version of the 3.0 app and frankly is
>>> really only noticeable on an older machine which happens to be the
>>> machine my boss tests on :), this for what is basically a ported
>>> version, sure there are some mods but to me they don't account for the
>>> diffs.
>>>
>>> So I'm wondering how "in tune" is 7.x to the newer Pentium
>>> architectures? As compared to a PIII. Also how in tune is it to versions
>>> of Windows. The machine in question is running Windows 2000.
>>
>>
>> Hello Charles,
>>
>> although I certainly don't know exactly about what has changed, I
>> somehow doubt that 7.x has longer startup times. It certainly was not my
>> impression when our project did the upgrade. However, there may be
>> reasons why your app starts up slower:
>>
>> - Memory policy and ObjectMemory sizesAtStartUp:
>> The VM has changed quite a bit between 3.x and 7.x, becoming a lot
>> faster, and much more efficient in free list management. This may
>> require different settings of the MemoryPolicy parameters and the
>> sizesAtStartUp. Are they the same in the two versions? Have there been
>> changes in the MemoryPolicy code? E.g., it may slow down startup if the
>> preferredGrowthIncrement and the growthRegimeUpperBound are too low, or
>> if NewSpace is too small and many temporary objects are created.
>>
>> - In 7.x, the image may be saved compressed - decompression of the image
>> may add to the startup time.
>>
>> - Did you actually measure if the modifications between the two versions
>> really don't account for the difference? Sometimes, I am surprised when
>> my performance optimizations slow down the application... ;-)
>>
>> - Is there anything in the 7.x image which wasn't in 3.x? Maybe a
>> SubSystem which does a setup which didn't have an equivalent in 3.x?
>>
>> Best regards,
>> Joachim Geidel
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Charles A. Monteiro-2
In reply to this post by Mark Pirogovsky-3
> Charles A. Monteiro wrote:
>
>> the way we handle that is we don't use the splash screen but pop our  
>> own  art with a little progress bar thingy , really pretty snappy :)
>
> Can you share with us how you do that ?


perhaps sounds fancier than what it is, I have a user subystem that when  
activated uses a "naked window" with a nice pic on it, the UI has a  
progress bar, text area, image area , I show the progress of the parcels  
being loaded, pop my app at the end etc,

the vm splash screen does not have an associated bmp resource so that in  
of itself probably adds to the perception of "waiting"


On Fri, 09 Mar 2007 14:00:35 -0500, Mark Pirogovsky  
<[hidden email]> wrote:

> Charles,
> Image size could have a role there - 7.4 image out of box(without  
> anything of interest) is about 8 mb, while VW3.0 is about 3.5mb.
> So the size  would explain some load performance.
>
> Also with introduction of more things like subsystem, which do have  
> happen on the start up in the latest releases - the system has to  
> perform way more things, many more messages to dispatch and so on.
>
> My observation that old (VW 3.0)UI runs in order of magnitude faster  
> then similar UI on the latest versions.  And I think that there is no  
> excuse for that.  New faster hardware just masks the inefficiency  
> problem, but it still be there
>
> Charles A. Monteiro wrote:
>
>> the way we handle that is we don't use the splash screen but pop our  
>> own  art with a little progress bar thingy , really pretty snappy :)
>
> Can you share with us how you do that ?
>
>>
>>> Maybe it is related to my request in the 5i time frame that eliot  
>>> slow  down startup so we could enjoy the nice splashscreen art at the  
>>> time :)
>
> Should we all look at the VM source for some "delays" then ?
>
>>>> there is an apparent slower startup time for VW 7.x as compared to  
>>>> 3.0,
>>>> this is based on the 7.x ported version of the 3.0 app and frankly is
>>>> really only noticeable on an older machine which happens to be the  
>>>> machine
>
> I do test our application on the old PIII 1MHz pc - there I can see all  
> of the double redrawing and many other UI anomalies of our app. , which  
> are usually not noticeable on my 3MHz workstation.
>
>
>>>> my boss tests on :), this for what is basically a ported version, sure
>>>> there are some mods but to me they don't account for the diffs.
>>>>
>>>> So I'm wondering how "in tune" is 7.x to the newer Pentium  
>>>> architectures?
>
> I don't see it is a problem with the Processor architecture, If you run  
> your new and old environment on the same hardware.  It is more of an  
> inefficient Images bloat  problem.
>
> --Mark



--
Charles A. Monteiro
http://wiki.nycsmalltalk.org
http://www.monteirosfusion.com
http://monteirofusion.blogspot.com

Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Charles A. Monteiro-2
In reply to this post by Mark Pirogovsky-3
now, that you mention it I do remember reading something about that,

too bad that Eliot has no authority any more :)

now the question is if I do build it on my boss's pc, is it going to run  
like s#*t on my machine, because that would be totally unacceptable :), I  
need speed


On Fri, 09 Mar 2007 14:11:56 -0500, Mark Pirogovsky  
<[hidden email]> wrote:

> It could be simple explanation for the startup performance.
>
> I do remember reading a bit on what is happening on the startup with the  
> memory pointers.  The VM detects that if the platform it is starting on  
> is the same as platform it was saved on.  And if it is not then it does  
> some "swizzle" of the memory pointers.  I am a bit fuzzy on exact  
> details, but that may explain the slowness.  So if you build on let say  
> Latest AMD processor running XP  and then start it on old PIII with  
> win2k that swizzleing may take place.
>
> What if you build your deployment on your boss PC and then compare ?
>
> Just my 2c.
>
> --Mark
>
> Charles A. Monteiro wrote:
>> well, it is true that the image is saved compressed and into a single  
>> exe  , should have thought about that. The memory policies are the same  
>> in both  versions but if anything 3.0 growed memory by a good bit since  
>> we do data  caching at startup i.e. it would not be an issue of  
>> settings being to "low"
>>  I have looked at the code differences. Of course, 7.x has now the  
>> notion  of subsystem startup and we have a user subsystem but I am not  
>> talking  that into account, our user subsystem is forced to start last  
>> and so I'm  actually measuring the time up to that event.
>>  Again, not that palpable of an issue on a modern machine.
>>  I guess that part of the issue is that image has bloated , some of  
>> that is  because I refuse to "strip" and so I therefore I compress. Our  
>> image with  everything loaded in i.e. when I don't do dynamic loading  
>> of parcels is  about 8.3 mb and I thing uncompressed that probably puts  
>> into the 17mb.  Yeah, probably image size is the one main culprit.
>>  thanks
>>  -Charles
>>   On Thu, 08 Mar 2007 15:47:09 -0500, Joachim Geidel  
>> <[hidden email]> wrote:
>>
>>> Charles A. Monteiro schrieb am 08.03.2007 20:32:
>>>
>>>> there is an apparent slower startup time for VW 7.x as compared to  
>>>> 3.0,
>>>> this is based on the 7.x ported version of the 3.0 app and frankly is
>>>> really only noticeable on an older machine which happens to be the
>>>> machine my boss tests on :), this for what is basically a ported
>>>> version, sure there are some mods but to me they don't account for the
>>>> diffs.
>>>>
>>>> So I'm wondering how "in tune" is 7.x to the newer Pentium
>>>> architectures? As compared to a PIII. Also how in tune is it to  
>>>> versions
>>>> of Windows. The machine in question is running Windows 2000.
>>>
>>>
>>> Hello Charles,
>>>
>>> although I certainly don't know exactly about what has changed, I
>>> somehow doubt that 7.x has longer startup times. It certainly was not  
>>> my
>>> impression when our project did the upgrade. However, there may be
>>> reasons why your app starts up slower:
>>>
>>> - Memory policy and ObjectMemory sizesAtStartUp:
>>> The VM has changed quite a bit between 3.x and 7.x, becoming a lot
>>> faster, and much more efficient in free list management. This may
>>> require different settings of the MemoryPolicy parameters and the
>>> sizesAtStartUp. Are they the same in the two versions? Have there been
>>> changes in the MemoryPolicy code? E.g., it may slow down startup if the
>>> preferredGrowthIncrement and the growthRegimeUpperBound are too low, or
>>> if NewSpace is too small and many temporary objects are created.
>>>
>>> - In 7.x, the image may be saved compressed - decompression of the  
>>> image
>>> may add to the startup time.
>>>
>>> - Did you actually measure if the modifications between the two  
>>> versions
>>> really don't account for the difference? Sometimes, I am surprised when
>>> my performance optimizations slow down the application... ;-)
>>>
>>> - Is there anything in the 7.x image which wasn't in 3.x? Maybe a
>>> SubSystem which does a setup which didn't have an equivalent in 3.x?
>>>
>>> Best regards,
>>> Joachim Geidel
>>



--
Charles A. Monteiro
http://wiki.nycsmalltalk.org
http://www.monteirosfusion.com
http://monteirofusion.blogspot.com

Reply | Threaded
Open this post in threaded view
|

RE: reasons why VW 7.x may be slower than 3.0

Steven Kelly
In reply to this post by Charles A. Monteiro-2
From: Mark Pirogovsky [mailto:[hidden email]]
> Image size could have a role there - 7.4 image out of box(without
> anything of interest) is about 8 mb, while VW3.0 is about 3.5mb.

As Charles wrote:
> I refuse to "strip" and so ... I compress. Our image ... is about
> 8.3 mb and I think uncompressed that probably puts into the 17mb.  

If Charles' VW 3.0 image is stripped, I'm guessing it's something like
half the size of the uncompressed 7.4 image. That size difference might
slow things down, but only if decompressing 8MB in memory to 17MB is
slower than loading the extra 8MB from disk. Another possibility is that
startup does garbage collect, and the 7.4 image hasn't been perm saved.
That could mean gc'ing 10MB rather than say 1MB.

Doing the three-phase image save will have some effect, but not a huge
amount. My understanding has been that the extra swizzling time on
platform changes has an effect, but only in the case where the platform
is different enough that it needs a different VM. So I think Win2000 vs.
XP wouldn't have an effect, and nor would AMD vs. Intel.

> Also with introduction of more things like subsystem, which do have
> happen on the start up in the latest releases - the system has to
> perform way more things, many more messages to dispatch and so on.

I wonder if this is the main factor. If the 7.4 image isn't stripped,
and Charles' build involves lots of VW components, there may be more
things hanging around unnecessarily that require initialization of some
sort on startup.

My advice would be to use Performance Monitor to track the CPU and I/O
usage when starting up. That should give you some clues as to what phase
or actions of startup are taking the most time. When VW appears slow,
I've often found that CPU activity is low: it's actually waiting on some
network call or some obscure Windows delay on disk activity.

From: Mark Pirogovsky [mailto:[hidden email]]
> My observation that old (VW 3.0)UI runs in order of magnitude faster
> then similar UI on the latest versions.  

Interesting: my experience is that the same app is faster in 7.x than
3.0. Things that are slower in 7.x include:
- anything that relinks / rebinds methods (happens too often)
- namespace lookups (because 3.0 didn't have them!)
- operations on source code files (because they are now XML)

If you really are seeing order of magnitude differences in speed, for
the same app code on the same PC, and it doesn't involve heavy use of
the above, it would be very interesting to look where the time is going.

Cheers,
Steve

Reply | Threaded
Open this post in threaded view
|

RE: reasons why VW 7.x may be slower than 3.0

Alan Knight-2
As far as the base image is concerned, I'd expect the size difference is the biggest factor, with the changes to the look and feel as a possible second. On a randomly selected one of my machines, a pretty current laptop, but running on batteries at the time, VW 3 takes in the ballpark of 250ms to start up and shut down immediately, with around 30 to 100ms of CPU time. VW7.5 takes about 500ms, or about 350 with the splash screen suppressed, with around the same or possibly less CPU time (it looks like 15ms is about the minimum resolution of the timer). The -nologo flag doesn't work on VW3, and I didn't pursue figuring out how to do it there further. With no gui and no splash screen, VW7 starts up and quits in 200 to 250ms.

At 05:35 PM 3/9/2007, Steven Kelly wrote:
From: Mark Pirogovsky [[hidden email]]
> Image size could have a role there - 7.4 image out of box(without
> anything of interest) is about 8 mb, while VW3.0 is about 3.5mb.

As Charles wrote:
> I refuse to "strip" and so ... I compress. Our image ... is about
> 8.3 mb and I think uncompressed that probably puts into the 17mb. 

If Charles' VW 3.0 image is stripped, I'm guessing it's something like
half the size of the uncompressed 7.4 image. That size difference might
slow things down, but only if decompressing 8MB in memory to 17MB is
slower than loading the extra 8MB from disk. Another possibility is that
startup does garbage collect, and the 7.4 image hasn't been perm saved.
That could mean gc'ing 10MB rather than say 1MB.

Doing the three-phase image save will have some effect, but not a huge
amount. My understanding has been that the extra swizzling time on
platform changes has an effect, but only in the case where the platform
is different enough that it needs a different VM. So I think Win2000 vs.
XP wouldn't have an effect, and nor would AMD vs. Intel.

> Also with introduction of more things like subsystem, which do have
> happen on the start up in the latest releases - the system has to
> perform way more things, many more messages to dispatch and so on.

I wonder if this is the main factor. If the 7.4 image isn't stripped,
and Charles' build involves lots of VW components, there may be more
things hanging around unnecessarily that require initialization of some
sort on startup.

My advice would be to use Performance Monitor to track the CPU and I/O
usage when starting up. That should give you some clues as to what phase
or actions of startup are taking the most time. When VW appears slow,
I've often found that CPU activity is low: it's actually waiting on some
network call or some obscure Windows delay on disk activity.

From: Mark Pirogovsky [[hidden email]]
> My observation that old (VW 3.0)UI runs in order of magnitude faster
> then similar UI on the latest versions. 

Interesting: my experience is that the same app is faster in 7.x than
3.0. Things that are slower in 7.x include:
- anything that relinks / rebinds methods (happens too often)
- namespace lookups (because 3.0 didn't have them!)
- operations on source code files (because they are now XML)

If you really are seeing order of magnitude differences in speed, for
the same app code on the same PC, and it doesn't involve heavy use of
the above, it would be very interesting to look where the time is going.

Cheers,
Steve

--
Alan Knight [|], Cincom Smalltalk Development

"The Static Typing Philosophy: Make it fast. Make it right. Make it run." - Niall Ross
Reply | Threaded
Open this post in threaded view
|

Re: reasons why VW 7.x may be slower than 3.0

Ralf Propach
In reply to this post by Mark Pirogovsky-3
Mark Pirogovsky wrote:
> It could be simple explanation for the startup performance.
>
> I do remember reading a bit on what is happening on the startup with the
> memory pointers.  The VM detects that if the platform it is starting on
> is the same as platform it was saved on.  And if it is not then it does
> some "swizzle" of the memory pointers.  I am a bit fuzzy on exact
> details, but that may explain the slowness.  So if you build on let say
> Latest AMD processor running XP  and then start it on old PIII with
> win2k that swizzleing may take place.

There are two things that are done to memory pointers on startup:

1. If you move from big-endian to little-endian or vice versa,
the byte order of the pointer is reversed - this does not apply here.
2. If the object memory is loaded into a different address than the one
it was saved from, the pointers must be adjusted, by adding/subtracting the
difference between the old and the new address. This will probably happen
when you move from one operating system to another, but I don't think
it explains much of the slowdown.


>
> What if you build your deployment on your boss PC and then compare ?

Or at least load and save it there and use the new image for comparision.

Ralf
>
> Just my 2c.
>
> --Mark
>



--
Ralf Propach, [hidden email]
Tel: +49 231 975 99 38   Fax: +49 231 975 99 20
Georg Heeg eK (Dortmund)
Handelsregister: Amtsgericht Dortmund  A 12812