[Wtr-general] Extreme slowdown moving from 1.4.1 to 1.5.1.1127

Pat Mac patslists at gmail.com
Fri Dec 1 15:26:14 EST 2006


Hi All, I've read through the archives I could find relating to performance
issues related to 1.5 but I didn't see any concrete solutions or reasons why
the slowdown is occurring. Running an existing script using the profiler my
execution time goes from 170 seconds to 425 seconds. Looking at the profiler
output I notice the following:

WIN32OLE#each is the top consumer in both profiles. In 1.5 it's taking
70.15seconds vs
59.19 in 1.4. Not a huge jump, but noticeable when running 100+ cases.

WIN32OLE#invoke is the number 2 consumer in both profiles taking
64.85seconds in
1.5 but only 25.69 seconds in 1.4. This is obviously quite significant.

Beyond the top two, the next highest in 1.4 is Logger#add taking just over
12 seconds. However, in 1.5 I see seven additional methods taking 20 seconds
or longer. The biggest hogs are Watir::Element#type at 62.64 seconds,
Class#new at 42.49 seconds, Watir::Element#assert_exists at 41.68 seconds
and Array#include? at 39.47 seconds.

I'm at a loss here. I'm running these tests on the same machine with the
same version of Ruby. I originally wanted to upgrade for the click_no_wait
functionality and modal dialog functionality but I can't take this kind of a
performance hit. Is there something obvious I'm missing? I did notice the
slowdown appears to be significant on pages with lots of controls. At this
point I'm probably going to backport the click_no_wait and modal dialog
functionality to 1.4.1 unless anyone has an idea of what I'm doing wrong
here.

--Pat
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rubyforge.org/pipermail/wtr-general/attachments/20061201/2e4b955d/attachment.html 


More information about the Wtr-general mailing list