Jump to content

V3 Faster Than V2 ?


wolf83
 Share

Recommended Posts

I've noticed that the number of ticks to perform some functions are about the same in v2.64 vs v3.x. However, it also appears that other functions (math, string, etc related) are faster within v3.x. Overall, I'd say that it seems that v3.x is faster -- but due to the variance of speed per function, a general speed enhancement percentage would not be applicable.

Link to comment
Share on other sites

  • Developers

just a question...

I was an user of autoit V2.64, is the V3 faster than the previous version ?

What is the improvment in % ?

thanks

Wolf

Save Hours of manual work and V3 has lots of extra Functionality. B)

Not really bothered if it takes 5000 ticks or 5010 ticks.. :whistle:

Edited by JdeB

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

AutoIt v3 is way faster when it comes to manage windows if you use the "Control" commands.

And if the v3 syntax is not as easy as the v2 one, the new functionalities talk for themselves : v3 is a lot better !

Cervélo Soloist 2004 & Cervélo P3C 2007

Link to comment
Share on other sites

But window searching and activation are often a lot slower with V3 because it uses the comprehensive method of detecting windows text. Most scripts won't be noticeably affected, but I have some that switch rapidly between different windows (such as for cut & paste operations) and that disappointed me, which was the reason for my original suggestion (many months ago) of making the "window search" method something configurable so that you could continue to use v2's fast method if you wanted.

Link to comment
Share on other sites

Do we have a v3 nemesis?

It's definitely not me... I love v3!!! :whistle::angry:B)

Truth be told, I don't bother updating my old v2 scripts anymore -- just rewrite them in v3 when any edits need to be made... Makes later code mods a LOT easier!

Edit: Especially with the external UDF includes :evil:

Edited by Bartokv
Link to comment
Share on other sites

  • Administrators

But window searching and activation are often a lot slower with V3 because it uses the comprehensive method of detecting windows text.  Most scripts won't be noticeably affected, but I have some that switch rapidly between different windows (such as for cut & paste operations) and that disappointed me, which was the reason for my original suggestion (many months ago) of making the "window search" method something configurable so that you could continue to use v2's fast method if you wanted.

The test I used at the time that was mentioned:

With about 10 windows open and various tray icons including one browser window titled "HiddenSoft Forums"

; 15.2 secs WM_GETTEXT
; 16.4 secs GetWindowText()
$time = timerstart()
for $i = 1 to 16384
WinExists("HiddenSoft Forums", "kjfdjkhhkj")
next
msgbox(0, "", timerstop($time))

There didn't seem much point in changing it. Maybe it's slower for some apps *shrug*

Link to comment
Share on other sites

  • Administrators

Actually it changes alot depending on the compiler I was testing the VC6 WM_GETTEXT against the VC7 GetWndowText. When using the same compiler:

WM_GETTEXT = 19 secs

GetWindowText() = 16.4 secs

But still, that's 16384 operations...

Link to comment
Share on other sites

The window search method is highly senstive to what types of apps are currently running. If even one of them is sluggish about checking its message queue (perhaps due to being busy doing a long disk operation), or is hung, window activation can suffer if the target window is beneath the sluggish window in the z-order. This is because the sluggish window may take up to 5 seconds to respond (at which point the operation times out), possibly resulting in extremely slow window searching and activations. At least, this was the result I was getting when I tested v3. It was very noticeable when running certain scripts and under certain conditions.

In short, the worst case performance of v3 windowing operations (5 second delay) is dramatically worse than the worst case for v2. But the average case doesn't suffer much.

Link to comment
Share on other sites

Well, I did it with TitleMatchMode... "overloading" it to support the words "fast" and "slow". But you'd probably want some other method. Also, I modified Larry's Window Spy to report the "slow" text in a different section.

I've yet to find a window for which I need the slow mode, but I'm sure there will be a need on rare occasion.

Link to comment
Share on other sites

  • Administrators

Well, I did it with TitleMatchMode... "overloading" it to support the words "fast" and "slow".  But you'd probably want some other method.  Also, I modified Larry's Window Spy to report the "slow" text in a different section.

I've yet to find a window for which I need the slow mode, but I'm sure there will be a need on rare occasion.

Anything with a text control.

For instance, you can do

WinWait("Untitled", "this is a word")

And that will only match the untitled notepad editor when you type "this is a word".

I use it loads in my autoit build script as well for determining when VC has finished a build or HTML workshop has completed because one of the windows has a "Compilation complete" bit of text.

I could never do that in v2. Of course when I add the option to v3 I could find that it didn't work in v2 for other reasons and was nothing to do with WM_GETTEXT :whistle:

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...