Page 8 of 13 FirstFirst ... 678910 ... LastLast
Results 71 to 80 of 126

Thread: 4.x Framework performance Request for an Official Statement

  1. #71
    Sencha User dongryphon's Avatar
    Join Date
    Jul 2009
    Location
    Kansas
    Posts
    1,748

    Default

    To handle large numbers of records, you'll probably need a custom reader to avoid any and all "no-op" conversions or transformations, but this almost sounds like these are being rendered. I know I have seen very large amount of pure data (no DOM) work w/o a problem. Maybe not 100k, but certainly 10k's.
    Don Griffin

    "Use the source, Luke!"

  2. #72
    Sencha Premium Member
    Join Date
    Sep 2011
    Posts
    51

    Default

    Quote Originally Posted by skirtle View Post
    @rich02818.

    Don't let the volume of forum activity surrounding performance put you off trying to optimize your app. I've seen a number of examples where people have complained of horrendous Ext 4 performance where the problems were being hugely magnified by their own app code.

    Don't get me wrong, many apps won't be fast enough even after optimizing. When I'm asked for my opinion about upgrading apps from 3 to 4 I currently advise staying on 3 and performance is the reason I give. I just think that too many developers are assuming that all their performance problems lie in the framework when they haven't made a genuine attempt to optimize their apps.
    I have spent *way* too much development time (in a project with a highly compressed schedule) attempting to optimize my application to the point that it's usable in IE8 (and it still isn't, according to my definition of "usable"). The time spent on this fool's errand was time we didn't have to put into the meat of the application: i.e., robustness of the backend, business logic, etc... The fact is, a UI is not something that's supposed to require optimization on the part of the application developer. A framework that requires the application developer to spend a lot of time optimizing the UI is failing to deliver, in my opinion, on one of the primary objectives of a UI framework.

    When developers attempt to sell a JS framework to management or a customer, the justification typically involves savings in development time over something like jQuery or even JS and DHTML alone. Given the weeks wasted in "optimization" with Ext, I don't think we could honestly make that claim for Ext JS 4...

  3. #73
    Sencha User
    Join Date
    Feb 2010
    Posts
    22

    Default

    @skirtle, I have to say that I feel a bit surprised on how you respond to customer's concerns on bad performance in ExtJS 4. Is the general opinion from Sencha that we should go out and monkey-patch the framework to make it usable? Isn't it obvious that the performance problems goes way beyond what is reasonable?


    @rich02818, @stahlman, I agree with everything you said.

  4. #74
    Sencha Premium User
    Join Date
    Nov 2010
    Location
    Chicago
    Posts
    2,339

    Default

    stahlman, there's a super easy way to speed up you application in IE

    http://code.google.com/chrome/chromeframe/

  5. #75
    Sencha User dongryphon's Avatar
    Join Date
    Jul 2009
    Location
    Kansas
    Posts
    1,748

    Default

    Quote Originally Posted by MrSparks View Post
    @Don,

    As promised, here an example app that performs as follows.

    FYI: I managed to get the layouts working under 4.1 PR1, so its safe to profile against that framework

    IE 8 - EXT JS 3.4.0 - 4.078 Seconds
    Chrome 15 - EXT JS 3.4.0 - 1.227 Seconds

    IE 8 - EXT JS 4.1 PR1 - 22.406 Seconds
    Chrome 15 - EXT JS 4.1 PR 1 - 2.731 Seconds
    http://www.sencha.com/forum/showthre...l=1#post669796

    My testing of this has the following timings:

    IE8
    3.4.0 - 1273 ms / 1395 ms
    4.0.7 - 6954 ms / 7351 ms
    4.1.0 - 4040 ms / not measured (my current build)

    The only change I made to your code was to also measure inside of onReady for the sake of this comparison (to avoid measuring the dynamic loader in my 4.1 test harness). I did not enable deferRender.

    What kind of machine are you using for a benchmark box? We have some mediocre machines we use for this (this one is Core i3 2.1 GHz laptop running Windows 7 64-bit), but maybe they are speed demons by comparison...

    In all seriousness though, this is a key factor (and a rather obvious one) so I am curious to know if we may also need to consider the hardware platform on which we base performance acceptance criteria. Some time back, we decided to use only real hardware (no VM's) for these tests since we were getting rather jittery results probably from the host OS load level.

    We have some ground to make up still when we consider just relative performance. We are currently in stabilize mode and have been for quite some time, but I hope we can get in a couple other promising changes before we call 4.1 done. TBD on that at the moment since we really focused right now on getting 4.1 beta and final released.

    Again, thanks for taking the time to dig in and provide such a useful example!
    Don Griffin

    "Use the source, Luke!"

  6. #76
    Ext JS Premium Member
    Join Date
    Apr 2008
    Posts
    394

    Default

    Quote Originally Posted by dongryphon View Post

    My testing of this has the following timings:

    IE8
    3.4.0 - 1273 ms / 1395 ms
    4.0.7 - 6954 ms / 7351 ms
    4.1.0 - 4040 ms / not measured (my current build)
    Why did you not measure with your current build? Doesn't work, or you don't expect it to be faster?

    Quote Originally Posted by dongryphon View Post
    The only change I made to your code was to also measure inside of onReady for the sake of this comparison (to avoid measuring the dynamic loader in my 4.1 test harness). I did not enable deferRender.

    What kind of machine are you using for a benchmark box? We have some mediocre machines we use for this (this one is Core i3 2.1 GHz laptop running Windows 7 64-bit), but maybe they are speed demons by comparison...

    In all seriousness though, this is a key factor (and a rather obvious one) so I am curious to know if we may also need to consider the hardware platform on which we base performance acceptance criteria. Some time back, we decided to use only real hardware (no VM's) for these tests since we were getting rather jittery results probably from the host OS load level.
    Mr. Sparks showed v4.1pr1 to be 5.49x slower than v3.4.0; you changed the test case slightly and showed 4.1pr1 to be 3.17x slower than v3.4.0. I'd say that confirms that this test case shows 4.1pr1 to have a serious performance problem.

    Quote Originally Posted by dongryphon View Post
    We have some ground to make up still when we consider just relative performance. We are currently in stabilize mode and have been for quite some time, but I hope we can get in a couple other promising changes before we call 4.1 done. TBD on that at the moment since we really focused right now on getting 4.1 beta and final released.

    Again, thanks for taking the time to dig in and provide such a useful example!
    I'm afraid that this means we shouldn't expect 4.1 to even approach 3.4.0 in performance...please tell me I'm wrong.

  7. #77
    Ext JS Premium Member
    Join Date
    Jul 2010
    Location
    UK
    Posts
    534

    Default

    @Don,

    Platform wise Ive tested on a few decent spec systems but I have to say all of my benchmarks are consistent in relative terms.

    For arguments sake my Dev (physical) box spec is:
    Intel Pentium 4 - 3.2GHz
    4GB Dual DDR - CL2.5
    300GB 10K SATA - Raid 1
    NVidia GeForce 7800 GS

    I have benchmarked on a business class system and of course thats a higher spec that my dev box and EXTJS ran faster. However it a mute point because this is a benchmark comparisons between 3.4.0 and 4.x (framework benchmarks). Were not performing benchmarks comparisons between hardware.

    Taking your benchmarks, on a system that would be classed as a very high spec for a business class user. 3.4.0 is over 3 times faster than 4.1.0 when using IE 8. Thats really highlights the fact than even with super fast machine 4.1.0 cant touch 3.4.0. In fact really proves the point that no matter what the hardware 4.1.0 always comes out slower. Again if you run the same test on Chrome on that laptop, 3.4.0 out performs 4.1.0

  8. #78
    Sencha User dongryphon's Avatar
    Join Date
    Jul 2009
    Location
    Kansas
    Posts
    1,748

    Default

    Quote Originally Posted by rich02818 View Post
    Why did you not measure with your current build? Doesn't work, or you don't expect it to be faster?
    I don't expect the load vs onReady delta to be a lot different than it was in 4.0.7, though a bit faster. The real reasons are just that it would take more steps to make a real build (we use dynamic loading primarily during development) and I was really much more interested in the time spent in onReady itself.

    Quote Originally Posted by rich02818 View Post
    Mr. Sparks showed v4.1pr1 to be 5.49x slower than v3.4.0; you changed the test case slightly and showed 4.1pr1 to be 3.17x slower than v3.4.0. I'd say that confirms that this test case shows 4.1pr1 to have a serious performance problem.

    ...snip...

    I'm afraid that this means we shouldn't expect 4.1 to even approach 3.4.0 in performance...please tell me I'm wrong.
    It is currently deemed a blocker to regress the performance baseline as we have measured it using our own internal benchmarks (Themes example and a few others). Whether or not there will be time allocated to pursue some of the other improvements to which I alluded is TBD.

    The key there, I think, is to incorporate examples that are more like real world apps (as did MrSparks) so we can make the performance baseline a proper acceptance criteria.
    Don Griffin

    "Use the source, Luke!"

  9. #79
    Sencha User dongryphon's Avatar
    Join Date
    Jul 2009
    Location
    Kansas
    Posts
    1,748

    Default

    Quote Originally Posted by MrSparks View Post
    @Don,

    Platform wise Ive tested on a few decent spec systems but I have to say all of my benchmarks are consistent in relative terms.

    For arguments sake my Dev (physical) box spec is:
    Intel Pentium 4 - 3.2GHz
    4GB Dual DDR - CL2.5
    300GB 10K SATA - Raid 1
    NVidia GeForce 7800 GS
    Thanks. I recognize that information - I probably need to make this a sticky post or something

    Quote Originally Posted by MrSparks View Post
    I have benchmarked on a business class system and of course thats a higher spec that my dev box and EXTJS ran faster. However it a mute point because this is a benchmark comparisons between 3.4.0 and 4.x (framework benchmarks). Were not performing benchmarks comparisons between hardware.
    Agreed when we are talking about relative terms. But people (internally and externally) will often look at individual tests in absolute terms. Consciously our not, folks see 2 seconds and might conclude that is OK, but they see 10 and know that it is not - regardless of the relative comparison.

    Since your 3.4 timings were 3x slower than mine, I would have expected 10-12 seconds for 4.1, not 22. Just makes me wonder how we could be measuring the same things. Is the installation of Windows very old maybe or perhaps had lots of apps installed/removed? I've seen Windows get crazy in its old age... where "old age" is somewhere between 6-12 months.

    Quote Originally Posted by MrSparks View Post
    Taking your benchmarks, on a system that would be classed as a very high spec for a business class user. 3.4.0 is over 3 times faster than 4.1.0 when using IE 8. Thats really highlights the fact than even with super fast machine 4.1.0 cant touch 3.4.0. In fact really proves the point that no matter what the hardware 4.1.0 always comes out slower. Again if you run the same test on Chrome on that laptop, 3.4.0 out performs 4.1.0
    I could see that spec as "high end" in some environments, but it was the lowest-end laptop you could get 6 months ago basically. We probably need to mine eBay for some even older machines.

    Agreed - the relative performance of 3.4 vs 4 vs 4.1 is rather stable regardless of actual speed. Except with your mystery machine as noted above

    Again, thanks for all your help and input!
    Don Griffin

    "Use the source, Luke!"

  10. #80
    Ext JS Premium Member
    Join Date
    Apr 2008
    Posts
    394

    Default

    Quote Originally Posted by dongryphon View Post
    It is currently deemed a blocker to regress the performance baseline as we have measured it using our own internal benchmarks (Themes example and a few others). Whether or not there will be time allocated to pursue some of the other improvements to which I alluded is TBD.
    After scratching my head a bit, I think this means that you won't release a build that is worse than its predecessor. Is this correct? Does this mean that v4.1 when released will likely be 3x slower than 3.4.0 on examples such as that provided by Mr. Sparks?

Page 8 of 13 FirstFirst ... 678910 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •