Next-gen profiling for Flash Player and AIR by Thibault Imbert

Last week, I spoke at the Adobe Live event in Paris about Flash Player and AIR and the future evolutions we are bringing to the platform. At the end of my session I gave a sneak peek of one of the features we are working on related to profiling. It will revolutionize the way you do profiling in Flash Player and AIR today.

Just for a little context about it, today, you can mainly profile the VM through the Flash Builder profiler, but soon, thanks to this feature, Flash Builder will also allow you to profile everything in the player, down to the deep internals of it. You want to know how much time is taken on each frame ? To do what ? The overall frame rate stability ? How much time a frame takes to be rendered ? Which network operations are being processed at a specific frame ? The impact of the frame rate ? The load on the CPU or GPU ? Everything the renderer does ? Then, you will be happy with this new feature. And guess what, this profiling runs with the release player, not the debugger version ;)

Below is the video of the presentation (video not available anymore), jump to the specific section "Le futur du profiling" if you do not want to see the whole session. In the session, I use an AIR tool, which acts as a Socket server and receives all the data from the Flash Player running in the browser. I tell you, this feature is going to be sweet.

I am sorry, this session is in French as it happened in Paris. So if you have a French mate at your office or around you, ask him for translation ;)

Update 01/10/13: This new feature covered here is now in use through the use of Adobe Scout, the revolutionary ActionScript profiler which got released through the Game Developer Tools on Creative Cloud. More details here: gaming.adobe.com/technologies/scout

Comments (21)

  1. It get this sticky feeling that Adobe is getting frenchier everyday.
    Thank you for publishing the slides !

    Wednesday, May 25, 2011 at 11:25 am #
  2. bwhiting wrote::

    Firstly where is the beard!?!?!

    Secondly thanks for sharing the video! An man my French is rusty… I understand about 1 in 5 words.

    Can’t wait for the new tools :)

    Wednesday, May 25, 2011 at 11:29 am #
  3. This is really cool (but you already knew that I would say that). :)

    Wednesday, May 25, 2011 at 11:37 am #
  4. edzis wrote::

    Impressive to see such profiling in action. Waiting for it to highlight the dark corners of my current applications.
    I also hope you will release source code for the example profiler app – to help us build tools optimized for our use cases.

    Wednesday, May 25, 2011 at 11:57 am #
  5. John wrote::

    Hello Thibault!
    Is this something like “Monster Debbuger” but without the need of exporting a SWC to the actual project you want to profile?
    Will we be able to change properties – execute methods on the fly as the application runs or this is going to be only for “read – only” type profiling?

    Thanks,
    John.

    Wednesday, May 25, 2011 at 2:13 pm #
  6. Vraiment bon ! J’adore :)

    Really good ! I like it :)

    Wednesday, May 25, 2011 at 5:26 pm #
  7. Simon Eyraud wrote::

    Awesome feature.
    Will we be abaible to get detailled function time informations (like http://code.google.com/p/as3-performances-analyzer/) ?

    Wednesday, May 25, 2011 at 5:42 pm #
  8. Rezmason wrote::

    Nice shirt, Thibault. :D

    Wednesday, May 25, 2011 at 5:55 pm #
  9. Thibault Imbert wrote::

    Hi edzis,

    We do not know yet if we are going to provide the AIR tool source code, but we will definitely provide strong documentation and getting started tutorials.

    Hi John,

    Yes, you do not need to add anything to the app. Plus, this runs in the release player, not the debugger. Today, modifying the application on the fly is not planned, but I will add this to our list.

    Aha, thanks Rezmason.

    Hi Simon,

    This is not planned today, but we could consider this. Good suggestion :)

    Thibault

    Wednesday, May 25, 2011 at 7:46 pm #
  10. Jake wrote::

    Any chance we will be able to get a list of objects in memory, and get a list of references to each of those objects? (For finding objects that aren’t getting GC’d)

    Also will we be able to get a feed from an AirForAndroid app running on a device like the DeMonsters Debugger?

    Really looking forward to this! Thanks!

    Thursday, May 26, 2011 at 12:37 am #
  11. PhilFlash wrote::

    If you have an Android phone/tablet, there is an application to see this video.
    Search “adobe live 2011″ or “philflash” in android market.
    Use the search function “Rechercher” and type “thibault profiling”.
    The video start with this chapter. Wifi connection required.

    Thursday, May 26, 2011 at 8:53 am #
  12. jloa wrote::

    i knew i should have learned french back at school :(
    Will there be a pdf version in english at least?

    Thursday, May 26, 2011 at 5:28 pm #
  13. Héctor wrote::

    Great improvement. What Jake asks would be the icing of the cake.

    Something I’d love more to see (since its rate of uses would be bigger) is being able to edit code while debugging, although I get it may not be possible or substantially hard. Also, it would be nice if Flash Professional projects could be compiled without the need of the IDE, that way we could set up a CI server without paying for an extra license.

    Not the typical “thanks, but…”, just something new to think of, or a new challenge to add to the already long list of wishes made by other people (although I know the second one is constantly being requested by people).

    Friday, May 27, 2011 at 10:05 am #
  14. In my opinion is great that Adobe Flash Player and AIR will turn out to be applications which you will be able to set in the best way that you want. Can’t wait for the new developments on this highly popular adobe programs. Thanks for sharing.

    Friday, May 27, 2011 at 2:06 pm #
  15. Blue112 wrote::

    Hi !

    Will it be possible to use theses tools with non-adobe swf making tools (haXe, for instance) ?

    There’s a real lack of profiling tool for theses ways, especially for tracking memory leak.
    It will be cool for it to be in a “separate” bundle, which allow to profile any swf, even if you have to pay for this bundle.

    Thanks.

    Saturday, May 28, 2011 at 12:37 pm #
  16. Blue112 wrote::

    Ok… Sorry for that dumb question, I’ve just watched your presentation (great, actually), and you’re answering my question.

    Thanks !

    Saturday, May 28, 2011 at 4:44 pm #
  17. O.M. wrote::

    What Jake said…

    We need to be able to see what goes around in the memory, and what is not GC’ed. To much time is used on fumbling around in darkness when Flash suddenly starts to leak memory.

    Monday, June 6, 2011 at 12:48 pm #
  18. Clark Stevenson wrote::

    Hey Thibault!

    This is great! I was just wondering, the profiling tool…. Its an AIR app?

    Is this application available for use right now, is it your a private project of yours or is it a future tool from Adobe?

    Thanks.

    Tuesday, June 14, 2011 at 9:29 am #
  19. Sean Fujiwara wrote::

    @Jake, O.M. Try the Object panel in http://www.swfwire.com/debugger

    Sunday, June 19, 2011 at 7:30 am #
  20. Jake wrote::

    @Sean, thanks for the tip, I’ll check it out!

    Tuesday, June 21, 2011 at 12:58 am #
  21. mee wrote::

    Any word on progress?

    Friday, December 9, 2011 at 8:40 pm #

Trackback/Pingback (1)

  1. [...] http://www.bytearray.org/?p=3151 Share [...]