Plugindev - How can I nail down performanceprobs with MePo 1.2 svn in facadeloading? (1 Viewer)

Guzzi

Retired Team Member
  • Premium Supporter
  • August 20, 2007
    2,161
    747
    Hi devs,
    I am working on the MyFilms plugin and have encountered a performanceproblem, when gpoing from MePo 1.1.1 to 1.2 svn.
    The initial load of a very long list takes approx 20 seconds - in comparison 1-2 seconds with MePo 1.1.1.
    Beside some GUIcontrol stuff, there is only 2 things using MePo code, where I see there were changes done:
    1.) if (!System.IO.File.Exists(conf.FileImage)) ...
    2.) strThumb = MediaPortal.Util.Utils.GetCoverArtName(Thumbs.MovieTitle, sTitle);
    Can you give me a hint how I can get back to 1.1.1 performance in loading the facade?

    Do I have to change handling - e.g. regarding the Fileaccesscaching introduced or access to Utils classes?

    Is there a free profiler available I could use to find the timeconsuming parts of the code?

    THanks in advance for your help,

    Guzzi
     

    Guzzi

    Retired Team Member
  • Premium Supporter
  • August 20, 2007
    2,161
    747
    • Thread starter
    • Moderator
    • #2
    AW: Plugindev - How can I nail down performanceprobs with MePo 1.2 svn in facadeloadi

    ok, I digged a bit by myself and ran the following tests:
    Test 1:
    Running MePo 1.1.1, loading, entering plugin into listfacadeview, changed view to reload listfacade, the latter is done by GetFilmList() - time for this is 3,02 seconds.
    Test 2:
    Running MePo 1.2 with SVN from 15.11., same procedere, Runtime is 157 seconds
    Both test are Debugbuilds - without profiler and in release both runtimes are about the half.

    So running in 1.2 gives me 50 times the processingtime than 1.1.1.

    I have attached screenshots of the profiling.

    Further I noticed, that in 1.2 after 1st loading of the facade when the GUI is rendered, I get lot's of DirectX exceptions in DoRender() - what could be the cause for this? Don't have this in 1.1.1

    Further questions:
    The (newly introduced) caching seems to spend much more time for what it does than it saves ?
    There seems quite a lot of time to be spend with coverflowstuff in 1.2 - is this intensional or a bug in the plugin?

    Screenshots for Test 1 - V1.1.1 runtimeenvironment:

    1-1-1-listloadhierarchy.JPG

    1-1-1-timepermodule.JPG


    Screenshots for Test 1 - V1.1.1 runtimeenvironment:

    1-2svn-listloadhierarchy.JPG

    1-2svn-timepermodule.JPG

    1-2svn-timepermodule-FindPathForWatcher.JPG

    1-2svn-timepermodule-FindPathForWatcher-Hierarchy.JPG

    RenderExceptions:

    1-2svn-exeptionsInDoRender.JPG

    Would very much appreciate, if you could pinpoint me, if there is maybe something wrong on pluginside, that I could fix.

    Thanks, Guzzi
     

    Guzzi

    Retired Team Member
  • Premium Supporter
  • August 20, 2007
    2,161
    747
    • Thread starter
    • Moderator
    • #3
    AW: Plugindev - How can I nail down performanceprobs with MePo 1.2 svn in facadeloadi

    ok, actually it's the GUIFacadeControl.Add() Call that uses the extra time with coverflow - all other types are very fast:

    1-2svn-GUIFacadeControl-Add.JPG

    Maybe it's possible to not filly load the anymations when just adding to the facade?
    filmstrip is initialized as well and is fast...

    Any help?
     

    Users who are viewing this thread

    Top Bottom