Severe UI performance degradation; removing all surfaces/cues/media does not fix
  • jasonbeyers
    super8 member
    Posts: 125
    Joined: Mon Oct 08, 2018 7:16 am

    Severe UI performance degradation; removing all surfaces/cues/media does not fix

    by jasonbeyers » Thu Aug 22, 2019 12:39 am

    I've been running into UI performance issues with MM 3.7.1 that are getting worse over time, and I believe MM is not clearing out artifacts when surfaces/cues/media/etc are deleted. I've tried for weeks to narrow down the issue, and unfortunately my work is blocked by this issue.

    I base all my MM projects on the prior one, to retain controls and some cues from project to project. These projects typically have 300+ cues, 100+ surfaces, 50+ materials, 1000+ ISFs, 200+ videos, 10+ DMX fixtures, and 3+ projectors with syphon output. And I regularly remove large portions of these projects (ex. all cues) when I start on a new project -- again, based on the prior project file. I've always noticed UI slowness when the MM project file is larger than 100 or 200MB, so for recent project iterations I've tried to keep the file size below that. But, previous iterations of this project chain did have more than this at one point -- and I think this prior larger state is what is causing issues now. Prior iterations of this project were initially created with MM 3.6.8.

    I'm hitting some blocker UI issues:
    1. Clicking on cue cells or anywhere in the Surfaces & Media lists can be extremely sluggish, sometimes with a 2-3 second delay before the UI responds.

    2. Clicking once on a cue often gets registered as a long-click, dragging the cue as I move the mouse, even though I released the trackpack/mouse right away. For minutes at a time, this happens on every click, on a defined cue.

    3. All shaders pause for a moment when clicking anywhere in the cues area. If the click happens *in between* cue cells, the shader pause can be up to four seconds. This however does not happen when an external program is selecting cues (like Ableton Live)

    4. Double-clicking on a cue name often does not register, often requiring over a dozen double-clicks to rename them. On many occasions, I've simply been unable to rename cues until I restart Madmapper -- after the 30th click I just give up.

    So, to fix this, I tried removing *everything* from my project file, leaving only the "Caustics" material in place, and with no surfaces or cues. This dropped the project file size down to 127KB, but the UI issues persist! Even after restarting my machine and Madmapper.

    MM memory usage for this bare-bones project is 265MB private mem, and 548 MB real mem, which on its own is suspiciously high. MM CPU usage for this bare-bones project sits at around 15% (normalized to 1 core), compared to the 100% I see with my regular project. CPU utilization for the host overall is extremely low while this is happening (<10% utilization, in this case 10% across all 6 cores), and there is >20GB of system memory available.

    I then tried creating a totally fresh project, selected the "Caustics" material, and tried clicking in between cue cells, and creating/renaming cues. I see no issue at all with this, even though it should be the same as my bare-bones project. Interestingly, this fresh project file is only 47KB (compared to 127KB), consumed 216MB private memory (compared to 256MB), and 337MB real memory (compared to 548MB) -- all noticeably lower than my stripped-down project that effectively has the same stuff. These are small differences, but UI performance is drastically different between these two simple projects.

    Something is getting left behind, from all of that content I deleted, and it is degrading the UI performance permanently. Given the countless hours I've sunk into building this particular project, starting over fresh is not an option, and I worry I will hit this issue with the new one, once I add enough stuff to it.

    I've uploaded this bare-bones project file, here: https://drive.google.com/open?id=1tieMq ... z_XdI3uEc2

    When you open it, try clicking *in between* cue cells and leave media previews on. The "Caustics" material should pause for a few seconds just by clicking there. The UI performance issues are much more widespread with my regular project (35MB on disk) but this is the simplest possible project to reproduce some of the issues.

    My environment:
    * Macbook Pro 15", 2018
    * OSX 10.14.6
    * 2.9 GHz Intel Core i9, 6 core
    * 32 GB memory
    * Radeon Pro Vega 20 4GB GPU (also reproduced with Radeon RX Vega 56 eGPU)

    I contacted garagecube support but haven't heard back. If someone from the garagecube team could take a moment to look at this project file, that would be much appreciated! I am stuck, and shows coming up, I am quite desperate :(

    Thanks so much!
    -Jason
  • jasonbeyers
    super8 member
    Posts: 125
    Joined: Mon Oct 08, 2018 7:16 am

    Re: Severe UI performance degradation; removing all surfaces/cues/media does not fix

    by jasonbeyers » Thu Aug 22, 2019 3:55 am

    Since the chain of projects spanned many Madmapper versions, including a variety of 3.7.0 beta builds, I suspect that an older version of MM maintained some memory structure that is no longer used in newer versions -- maybe something was just renamed internally. And that the newer versions don't explicitly clean these up.

    In any case, it seems that MM is traversing a lot of in-memory data every time a user clicks somewhere in the UI - probably more than is necessary for just renaming a cue, or even just selecting a vacant cue cell. That, or the UI is getting blocked by backend calls in general (not ideal).

    Anyways, just some ideas. Thanks!
  • mad-matt
    garageCube team
    Posts: 1478
    Joined: Mon Sep 09, 2013 5:50 pm

    Re: Severe UI performance degradation; removing all surfaces/cues/media does not fix

    by mad-matt » Thu Aug 22, 2019 1:50 pm

    Hi Jason,
    Could it be related to your ~/Documents/MadMapper folder with custom Materials / FX ? Could you rename it to ~/Documents/MadMapper_SAVE and test again ?
    Are you using the official MadMapper 3.7.1 ? Which OS version ?
    I can't reproduce the issue. At least when I load your project file drop the Caustics, click everywhere, the FPS is always 60.
    Cheers
  • jasonbeyers
    super8 member
    Posts: 125
    Joined: Mon Oct 08, 2018 7:16 am

    Re: Severe UI performance degradation; removing all surfaces/cues/media does not fix

    by jasonbeyers » Thu Aug 22, 2019 5:41 pm

    Hi Matt,

    I renamed my "Materials", "FX", "Generators", and "Modules" folders to something else and retested. MM automatically created new ones of these on startup. Unfortunately I can still reproduce the problem.

    I also tried just renaming the whole Madmapper directory (from ~/Documents) and tried again, but same result.

    This is with the official MM 3.7.1 build, 1906139895. On OSX 10.14.6, which to my understanding is a pretty new version.

    I also tried MM 3.6.8 and can reproduce it there as well, using the same stripped-down project (one that used to contain lots of things on a prior save) with just the Caustics material.

    Short screen recording showing the issue with this particular project: https://drive.google.com/file/d/1xQ1D60 ... sp=sharing

    Thank you!!
  • mad-matt
    garageCube team
    Posts: 1478
    Joined: Mon Sep 09, 2013 5:50 pm

    Re: Severe UI performance degradation; removing all surfaces/cues/media does not fix

    by mad-matt » Mon Aug 26, 2019 11:51 am

    Hi Jason,
    I just tested on macOS 10.14.6 to be sure it's not specific to this recent release but couldn't reproduce.
    I also inspected the load procedure of the project, it just contains what we see, nothing more (3 visuals: testcard, the ISF & the facetime camera, a single cue containing 27 entries), nothing that could explain an issue with this particular project compared to a project you would have created from scratch with the same things...
    Let's have a Skype session to see the issue on your machine. We keep in touch via user support.
    Matt
  • jasonbeyers
    super8 member
    Posts: 125
    Joined: Mon Oct 08, 2018 7:16 am

    Re: Severe UI performance degradation; removing all surfaces/cues/media does not fix

    by jasonbeyers » Tue Aug 27, 2019 10:34 am

    I passed along details over email and now have a resolution. I figured I'd send this here too, if it helps others avoid problems too:

    The problem was with an external app for Mac, called Magnet: https://apps.apple.com/us/app/magnet/id441258766?mt=12

    It's a super simple app that gives you better window management on Mac, and there are many apps like it.

    Something about my particular MM project, in conjunction with the Magnet app running, caused the performance issues I saw. Killing/uninstalling the Magnet app fixed everything!

    As a PSA for everyone, I'd suggest avoiding the Magnet app, and perhaps other window-management apps like it, if you're on Mac. This may have been common knowledge for graphics/VJ work but I have learned this the hard way, haha.

    Thanks, and sorry for the hassle!

Who is online

Users browsing this forum: No registered users and 44 guests