Rethinking Flex Animations: [Bindable] causing intense application lag

Hey,
There is a big difference in animation/effect performance across computers in Flex.  On our macs (Mac Pro desktop, Macbook Pro, MacBook), everything is fairly smooth (Firefox and Safari).  On any Windows XP (Firefox or IE), alpha and translation animations/effects are very choppy, not to mention rotation or anything more complex: a TweenMax alpha tween from 1 to 0 in 1 second only uses 3-4 frames, instead of 24-60.  On Windows Vista, it's like 2 frames (this is on a Panel 500 x 500).  Same with tweening x and y.  Same with running Andrew Trice's KeyFrame and MotionPath example, very choppy on anything but a mac, especially if you have a full blown application with 50+ components on the stage at once.
I think this might have something to do with the event dispatching going on with animating properties.  When you tween the "alpha" on a UIComponent for 1 second, it can dispatch more than 20 "alphaChanged" events, even when there are no listeners for it.  Add in a position animation, and you easily have 50+ events being dispatched for every item animating on the screen, plus calls to invalidateProperties(), invalidateDisplayList(), etc. (setting UIComponent.suspendBackgroundProcessing to 'true' doesn't help), plus all the background binding execution flex generates in the background.  Tons of things pure Actionscript doesn't use when animating.
In pure Flash/Actionscript, when you do animations (like those found on Template Monster website templates), they are VERY smooth, even on Windows Vista.  The only difference between these animations and those in Flex is:
1) Flash is not dispatching any events when properties change.
2) Flash is not calling any invalidation methods when properties change.
Granted, invalidation and binding is core to Flex and I love it dearly.  But if there was/is a way to prevent any binding updates (event dispatching), and calls to even any invalidation methods WHILE ANIMATIONS ARE RUNNING, I think animations in Flex would be just as smooth as those in Flash and pure Actionscript, on all computers.
Question is, is this possible?  Is it possible to say "don't update any bindings on these objects until this animation is complete"?  If not, is Ely or others involved in the new Spark architecture willing to take on such a task?  Otherwise it's pointless to use anything but the simplest animations (changing alpha or color on a 20x20 ButtonSkin) because its choppiness will just detract from the User Experience.
Thanks for your help.
Lance

Hi Lance,
I know you're asking about performance of non-Flex tweening engines, but I'll answer from my Flex 4 effects perspective, since that's what I know. All of the tweening engines, including Flex 4 effects, use a similar approach, however; they just animate the properties of Flex objects. So they would all share similar performance characteristics in general.
The performance of the animations is highly dependent on what's happening in your application. I'm surprised you're seeing as little as 2-4 frames per second, but I would bet there's a lot happening in your app at that time, because it's not hard to achieve much higher frame rates (like 30-60 fps) in very simple situations.
Data binding and layout could be contributing to the performance. I'm not sure how much data binding itself adds (just sending out the events when properties change), but it may be what the listeners are doing with that information that is bogging it down. That is, maybe sending out the event for alpha changing doesn't cost that much, but the listeners may be doing some processing on that change, or any change in general, that is coming at a cost to the system.
There is no flag to disable binding events that I know of. There is a property on Flex effects that disables some event processing (suspendBackgroundProcessing), but it's a bit of a heavy hammer and I wouldn't recommend it as a general approach. (In fact, I'd like to ditch that property since it has some odd consequences at times).
Layout will also contribute to the problem, depending on what's happening. For example, if you are resizing a button in a vertical layout, then the layout will want to shift around the sibling objects to adjust to the size change. That is probably what you want to happen in the UI, but it comes at a cost since the layout has to recalculate everything for the container on every animation update.
There is a flag in Flex effects to reduce the processing of layout in particular: disableLayout=true. This tells Flex to avoid doing layout on the target object's container during the course of the effect. Again, it's a heavy tool to wield, but can be the right thing to do in some situations.
There might be a better general approach we could look into eventually, such as running animations that are more visual than functional (e.g., resizing a button's graphical assets without sending out events as the button changes), but that'll have to come after this release, in which we were focusing on getting the architecture right for spark and flex 4 effects.
In the meantime, I'd play with a profiler and see where you're getting bogged down with your animations; I've seen some pretty slick stuff in non-trival UIs, so the fact that you're seeing such low frame rates means there might be something going on in your app that you could fix rather than waiting for us to think about how to lighten the load for animations.
For example, if you're seeing poor performance for doing a cross-fade between one screen and another, fading out all of the current components and fading in the new components, consider fading alpha on just the container itself. Or using the new CrossFade effect. Once you know more about where your performance issues are coming from, it's easier to figure out how to fix or workaround them in your application.
Chet.

Similar Messages

  • Fonts causing major system lag

    Some of my fonts are causing my system to get bogged down. (one i downloaded in particular called "City Burn"). I haven't used the font much before (like once on OS 10.5), but now I will be using it all the time in 10.6. I don't recall it lagging in 10.5 the few times i used it, but now in 10.6, it causes so much lag that my presentation software (ProPresenter) can't even transition nicely with it... Photoshop have major lag with it too (though that is less of a problem since i don't use photoshop live ever, so i can deal with the lag)
    How do I make my font not cause lag? HELP!

    But would that explain why it didn't lag in 10.5, but does in 10.6?
    Snow Leopard was essentially a complete rewrite of the OS as 64 bit. This includes the type engine, which still has some glitches. So SL may have problems handling the font that Leopard had no apparent trouble with.
    and would RAM errors cause the processor to be running at full?
    Yes. Just as a corrupt application can, a bad font (fonts are actually small programs) can cause buffer overflows into RAM that is not assigned to it.
    If you have performance issues when just that one font is active, and everything returns to normal when you turn it off, then the font is most definitely bad and shouldn't be used.
    Edit: Is this same font?
    http://www.dafont.com/city-burn.font
    If so, that is one BAD font. About a billion points, many overlapping. Ditch it.

  • BT Mighty Mouse become skippy when MacPro running intensive applications

    my BT Mighty Mouse become skippy when MacPro running intensive applications. Example, I was editing my photos with Aperture while I launch Visual Hub to convert a divx to Apple TV H.264, the mouse point become very skippy or sluggish. when Visual Hub complete the encoding the mouse is back to normal. is this an interfance or cause by running the CPU too hard?

    I'm going through the same "issue" actually so I hope I can save you some time.
    It's a grounding issue. You can experiment:
    - Touch your Mac Pro system while you're moving the mouse, or;
    - Touch your keyboard while moving the mouse
    If the mouse calms down and doesn't try to escape , then you have the source of the problem.
    I've read a lot of discussions on this, with people replacing their mice constantly, and even doing a full re-install. So if the above works, then your solution is in figuring out how to deal with the ground-ing problem.
    What's more surprising is that Apple hasn't addressed this (it seems) for some time now. With all the gyrations customers go through, you'd think there would have been some type of solution (a recall perhaps?).

  • How to integrate a flex build in a web application running on jBoss 5.1

    Hi,
    I have two flex builds for a messaging application that I have to integrate with my web application running on Jboss 5.1 . I have tried hot deploying the builds into the default deploy folder of Jboss,but that approach doesn't seem to work(maybe because I may need to make war out of the flex builds). Can someone tell me an approach of how to accomplish this. Can I leverage BLAZEDS for this purpose.
    Thanks
    Rohit Kumar

    Hi,
    Go through Re: Web Dynpro and Smart Forms.
    Regards,
    Satyajit.

  • I have huge lag with Safari's Reading List using a rMBP. I have probably 80 articles saved, which is likely the cause of the lag. Is there any way to export that list of articles so as to be able to delete them from Reading List but still have a record?

    I have huge lag with Safari's Reading List using a rMBP. I have probably 80 articles saved, which is likely the cause of the lag. Is there any way to export that list of articles so as to be able to delete them from Reading List but still have a record of the articles I intend to read?

    I'm currently dealing with this issue myself, except that my rMBP has NO articles in the reading list.  It's a brand new rMBP too, purchased just this week, with the 2.6 Ghz Processor & 16GB of RAM.
    Let's see what we can find.  I may just take it back to the Apple Store.

  • Acrobat Reader 11.0.07 update causes LabVIEW application to crash

    Hi All,
    I wrote an application that uses the Adobe ActiveX element to display a PDF.
    This code used to work fine, but when I updated my acrobat reader from 11.0.06 to 11.0.07 it causes the application to start very briefly displaying the icon in the taskbar but then close (without an error or warning notification).
    When downgrading to 10.0.06 the problem was solved.
    Perhaps this can be of help for others who are experiencing problems with LabVIEW / Acrobat Reader.
    Chris

    This is a known problem that everybody is yelling about and the solution is to not upgrade to 11.0.07. You don't have to all the way back to V10. 11.0.06 works fine. Just remember to configure Acrobat to not automatically update itself.
    Mike...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • Consuming toPDFA and isPDFA methods in DOCConverterService in Flex Builder 3.0 AIR Application

    Hi All,
    Does anyone have sample code how to consume and use the Docconverter service from Adobe Livecycle 8.2 ES in Flex Builder 3.0 AIR Application. I want to consume both the methods 1) toPDFA and 2) isPDFA methods to convert a PDF to PDFA and to check the compliance after conversion. If any one could help me in this, would be very grateful.
    Thanks in advance
    Umashanker.K

    I think the problem you are experiencing is this one:
    http://subclipse.tigris.org/issues/show_bug.cgi?id=511
    You probably have Subclipse 1.2.4 installed, which is the
    latest official release. But the new release based on Subversion
    1.5 has been in development for over a year. It will be version
    1.4.0 and probably released next week when Subversion 1.5 is
    released.

  • Why does the copy/move command cause the application to freeze up?

    The move/copy command causes the application to freeze up.  I am using PSE8

    The move/copy command causes the application to freeze up.  I am using PSE8

  • IMovie causes different applications to not respond. Need help.

    iMovie causes different applications not to respond.  If I click on iMovies in the Finder or in iWeb, I get the rainbow wheel of death.  Eventually, I have to Force Quit the app.  I can no longer use iWeb as a result as each time it opens, iMovie tries to load my movies.  I can't click on anything else to stop the process and eventually have to Force Quit.  Any thoughts?

    Thanks for the reply.  Software is all up to date.  The problem still persists.  I'm not sure Perian is the answer.  When composing an email, I clicked on the Attachment icon and it pulled up Finder.  Finder appartently was set to default to my movies folder.  When it did that, the same problem happened.  Mail was locked up and I had to Force Quit.  It may be that the iMovie library is too large? 

  • RMBP and Freezing during Graphics Intense Applications

    Hi all,
      I have a MBP Retina and whenever I try to run Civilization V or Aperture Full Screen (or anything else that requires switching to the nVidia graphics), my computer completely freezes in place.  This means everything can display on the screen, but everything just stops.  If I was listening to iTunes while doing whatever activity it suddenly stops playing, along with the application I am using.  Mouse is completely frozen.  Is it a software problem?  Should I go spend some time getting it replaced at the Apple Store?
    Thanks.
    -Dave

    Hey Dave,
    I've been experiencing the same exact issue. I also noticed when using an external display that the screen will show some static for a couple seconds then everything will work as intended.
    Were you able to replicate this issue on the Windows partition (if you have one)? The issue is definitely heat related. If I use SMCfancontrol to keep the fans at a higher rpm while gaming or using a graphic intense application, everything is fine.
    I'm trying to figure out how to handle this.
    Thanks,
    Coupe

  • Safari Performanc while using any 3D intensive application

    Hello,
    After upgrading to Snow Leopard I have notice a significant decrease in performance while running Safari if I also have any 3d intensive application also running. For example when I have World of Warcraft open I usually have Safari open in the background. This is near impossible now since upgrading to Snow Leopard. I have not had any issues until after the upgrade. I did find a post over on the WoW forums of another user experiencing something similar. I have not changed any settings since upgrading. I also experienced lock up and had to "manually" hard reset my iMac. I have sufficient harware, 2.66 core 2 duo proc, and 4GB of memory. Anyone experiencing similar problems? As I said before I had NO issues before upgrading, in fact I would have WoW, iTunes, Safari, and Adium all up at the same time with no performance degredation.
    You comments are welcome and appreciated.
    Thanks for your time,
    Nick

    Hello,
    After upgrading to Snow Leopard I have notice a significant decrease in performance while running Safari if I also have any 3d intensive application also running. For example when I have World of Warcraft open I usually have Safari open in the background. This is near impossible now since upgrading to Snow Leopard. I have not had any issues until after the upgrade. I did find a post over on the WoW forums of another user experiencing something similar. I have not changed any settings since upgrading. I also experienced lock up and had to "manually" hard reset my iMac. I have sufficient harware, 2.66 core 2 duo proc, and 4GB of memory. Anyone experiencing similar problems? As I said before I had NO issues before upgrading, in fact I would have WoW, iTunes, Safari, and Adium all up at the same time with no performance degredation.
    You comments are welcome and appreciated.
    Thanks for your time,
    Nick

  • Precision on "Write Intensive" applications

    Hi,
    We dont have experience with Oracle so far.
    From Oracle faq, I saw the information "...RAID 5 is good for read intensive, but not write intensive applications."
    What is write intensive application? We are planning to have 200-300 mb of transactions per day in a database.
    Thanks.
    Claude

    this is a topic that generates significant debate. based on my experiences, the oracle documentation i have read, and input from large disk manufacturers, i generally recommend raid-1 for many of the reasons mentioned in the previous response.
    databases typically use random, low-block-size (16k and under) i/o that is better suited for raid-1. raid-5 excels in highly sequential, large block size operations. even though raid-1 "costs" more in acquisition cost, i believe the relatively low cost of disk storage is worth the extra price in terms of the performance benefit you will receive (in both normal and in degraded modes) for larger, higher volume databases.
    no matter what raid mode you use, most raid controllers allow you to enable write caching, which can speed the performance of write operations. make sure you have battery backup on your hardware if you enable this option.
    another very important factor you should address is the distribution of your raid arrays over multiple host channels. this means that you should not hang all of your oracle data off of a single scsi or fiber disk bus. distributing your data over multiple buses also opens up the ability to store frequently-accessed data on faster disk. so you could use a combination of raid-1 and raid-5 if you wanted to compromise. but you always have to be monitoring the i/o performance of your hardware and database, so you can balance the i/o appropriately.

  • Options for Bandwidth intensive application

    I appreciate any recommendations, I have a remote office needing to access a very bandwidth intensive application (scanned TIF images) currently we are looking at a 100Mb metro ethernet or DS3 type of link to our office where the DB resides. Are there any content caching products or new technology that would help me improve access to this application?

    in order to accomodate content caching as you've described you need, for an enterprise class environment, you'll want to check out the Cisco CSS line of content switches.
    a quick view of the CSS abilities for content caching includes:
    (taken from cco documentation)
    * examining network traffic for web content requests
    * bypassing the cache automatically for non-cachable content
    * distributing content requests to maximize cache hits
    * bypassing the cache or redistributing requests among the remaining cache services if a cache service fails
    * proxy caching capabilities.
    among other capabilities, this device would allow you to create a 'farm' of web servers where your content can be housed utilizing faster response times and high availability.
    please see the following link for more info on the CSS and its abilities:
    (there are other 'model' versions of the CSS than the one linked here)
    http://www.cisco.com/en/US/products/hw/contnetw/ps792/products_data_sheet0900aecd800f851e.html

  • Periodic lag experienced in graphics-intensive application

    This lag is debilitating.  So far I have only experienced it on the Windows 7 (64 bit) side of my Bootcamp partition, but I have not attempted to run such applications in the OSX side.
    The Problem:  About every 5.1 to 5.2 seconds, the framerate drops to a standstill.  As this happens over and over again, the duration of the stutter increases until after about an hour it is equal parts smooth and lagged.  Despite the increased duration, the periodicity remains between 5.1 and 5.2 seconds by my stopwatch.  Eventually, the lag becomes so great that the applications become unusable.
    I have found this problem in the following applications:
    TERA Online
    Guild Wars2
    Star Wars The Old Republic
    I have also found forum discussions citing the same symptoms in Diablo 3, although I have not played or installed that game on my own system.
    This appears to be a common problem across all these graphics-intensive games specifically centered around the iMac.  This is why I am bringing this up to the Apple community.  Has anyone else seen this phenomenon?  Is there a solution?   I did just update the Radeon HD 4850 graphics drivers.  Could that have something to do with it?

    Interestingly, when I turned on my computer this morning, it got stuck in the boot process.  The revolvong timer under the apple logo took about three minutes to clear and then I got stuck on the blue screen that appears before you see your desktop wallpaper.  I had to manually turn it off and restart it.  It started fine the second time.  The only thing I had done the day before was move my bootcamp folders into the privacy section of Spotlight as recommended on another forum. 
    When I launched bootcamp, I noticed one difference immediately:  the clock was correct.  I know this sounds silly, but the computer clock in Windows had been five hours off for over a week.  I've had to manually set it each time I boot into bootcamp.  Not today.  Also today there has been no lag as I have described above.  Whatever the problem was (or is), the symptoms have disappeared.  I wonder if it was related to the clock, and/or Spotlight. 
    In any event, I also took your advice and downloaded CCleaner and performed a drive analysis, cleaned it and my registry today.  I'll conduct some more tests, but so far the symptoms seem to have gone away.

  • Periodic lag/screen brightening experienced in graphics-intensive application

    Hey I just started playing Guild Wars 2 on my iCore5 and I'm having a very similar issue, randomly when I'm playing my screen with brighten as if someone is turning the brightness up and when this happen it will kill my fps and lag me. This effect last for about 3-5 seconds then it will return to normal for a few seconds then continue to lag. I played SwTOR on my boot camp and never once had an issue. Can anyone tell me what might be happening? I'm going to try and reinstall the game to tonight.
    <Subject Edited by Host>

    It's an iMac.
    I went and looked at my settings last night and the min. Requirements for guild wars 2 my computer.
    I haven't tried to update my drivers yet in going to try that tonight.
    I sent a request to their support website haven't gotten a reply yet.
    When I do play on Boot Camp side there is nothing running but the current game I'm playing.
    I also found out last night that sadly when I installed this boot camp version I used a 32bit install disc I do have a 64 bit so if all else fails I'll reinstall all of windows.
    I'm by no means s computer guru, but it has me s little stumped as to why I can play WOW, diablo 3, SWTOR, and never see this problem. So I don't think it's a hardware issue.
    Thanks again for the help.

Maybe you are looking for

  • OfficeJet Pro 8600 Plus e All in One fax to e-mail help

    I purchased this unit yesterday for my office and I would like to have incoming faxes get sent to my computer as an e-mail.  I have gone through the digital fax setup process but I am not receiving e-mails notifying me of a fax.  Here are some specif

  • Windows Server 2012 R2 GPO Loginscript is executed with more than 2 minutes delay after login

    Hi everybody A strange problem came up in a new Windows Active Directory Domain (one single DC with Windows Server 2012 R2 Essentials): after configuring a User GPO with a Powershell Loginscript and applying the GPO to an User OU, the following happe

  • Poor quality text in PDF

    I am using Acrobat pro X to produce an online brochure. I started producing the brochure in Corel draw using A4 paper size in landscape mode. When I created the PDF by the print command the general quality was very poor, both graphics and text. I exp

  • New printers supported on old LC II

    Can anyone tell me clearly what printer cable connection and communication standards are supported by the LC II? Background: I want to replace a Personal LaserWriter LS currently being used with the LC II, and Apple's document at http://docs.info.app

  • Problem logging into Workflow Designer

    Hi, here is my problem. Workflow 7.0 is installed on W2k3 EE (with Forms and Form Manager) via turnkey installation ( and is on Jboss of course). I've got four other computers in domain. All with XP. And only from one i can login into Workflow Design