- Vuo Founder
- Rochester Hills, Michigan, US
- Personal website
- Personal website
- Work website
- kineme.net profile
- LinkedIn profile
- Twitter profile
- Vimeo profile
- 7 years 1 month ago
- Last seen
- 1 week 1 day ago
Thank you Jaymie for your response, happy to hear you're looking into it.
Curious that you haven't been able to replicate the issues, but my ancient laptop also ran things better than a (somewhat) newer Mac Pro desktop. They're running entirely unequal monitors, of course, but my laptop also happens to have an Nvidia GPU and is running High Sierra. Any chance that's a common thread? Have you tried on newer machines with AMD GPUs and a new MacOS version?
Glad to hear you'll be overhauling the graphics system, looking forward to updates! :) Thanks.
Obviously an old laptop screen (non-retina) is going to be a lot easier to render than dual 4k monitors at 1.5x scale...but I'm still surprised at how much better an antiquated laptop runs this performance test than the Mac Pro posted above. Quartz performance appears identical (periodic dropped frames), and Vuo (as a screensaver) appears to run much less poorly (very rough startup, and still a little inconsistent, but not nearly as bad).
I ran through the tests both as screensavers (had to take the shots with my phone; delayed screen captures weren't working on this machine) and from the editors (in fullscreen mode; I waited for a full loop reset to avoid window resizing performance issues and overlays showing up). Even with such a simple render test, Vuo screensaver performance is measurably worse than Vuo as a windowed app.
Tested on a Mid 2010 MacBook Pro (2.66GHz Core i7, 8GB ram, NVIDIA GeForce GT 330M 512 MB) running MacOS High Sierra 10.13.6.
Here's a slightly modified version of the Vuo composition posted last year with an additional vertical offset and a periodic reset. I recreated it in Quartz as well, but had to test it in fullscreen mode instead of screensaver mode (none of the computers here at work are still on a MacOS version that supports .qtz screensavers). After 10 years of using Quartz Composer, I've never seen a performance difference in .qtz files between running in full screen from the editor and running in screensaver mode...but while I wish this could suffice as a usable test, Quartz is not rendering at retina resolution, so it's very much not a direct comparison. The only real result is that the final release of Vuo 2.0.0 (build 11210) still does not solve the screensaver performance issues. I would hope that a composition this simple would render without major frame rate issues...no luck.
- Quartz Composer editor fullscreen: solid frame rate, occasional dropped frames
- Vuo screensaver on monitor 1: inconsistent frame rate (I could only use Screenshot.app's 10 second delay, so results are limited to ~9 seconds)
- Vuo screensaver on monitor 2: significantly worse with inconsistent frame rate and constantly dropped frames (I'm running two monitors as a combined space, not separate...but previous testing seemed to indicate that setting made no difference)
Tested on a late 2013 Mac Pro (2.7GHz 12-core Xeon E5, 64GB ram, dual AMD FirePro D700 6GB GPUs) running MacOS Mojave 10.14.6.
Thanks everyone! I know it's been forever, and Vuo 2.0 is out of beta now...it's been a busy half year and I simply wasn't able to circle back till now.
- System specs should be irrelevant when comparing relative performance, right? For example, my old 2010 MacBook Pro was able to render the same GLSL code in Quartz with significantly better performance than it was able to while using the Vuo beta last year (regardless of screensaver or dedicated app, IIRC). The fact that it can barely edit 1080p video doesn't really factor in (haha), I didn't care if it couldn't run higher end graphics...the same code was great in Quartz Composer but terrible in Vuo. Of course, if it's a machine specific bug in Vuo, that's another matter (granted, I had the same issues on every computer I tried!). Systems I was testing on last year:
- Mid 2010 MacBook Pro, 2.66GHz Core i7, 8GB ram, NVIDIA GeForce GT 330M 512 MB
- Late 2013 Mac Pro, 2.7GHz 12-core Xeon E5, 64GB ram, dual AMD FirePro D700 6GB
- Mid 2015 MacBook Pro, 2.8GHz 4-core i7, 16GB ram, AMD Radeon R9 M370X 2GB
- Late 2015 iMac, 4GHz 4-core i7, 32GB ram, AMD Radeon R9 M395X 4GB
...I believe they were running a mix of Mojave and High Sierra at the time. They're upgraded to a mix of Mojave and Catalina now, not to mention there have been a number of Vuo updates since then! My hope is that the bugs have been ironed out by now, I just haven't been able to double check myself.
I didn't learn anything additional at the time. Vuo had major performance issues and was rendering very erratically, but predominantly when using the screensaver export. Dedicated apps weren't as bad, and in fact, performance sufficed to build out an all-new experience that now runs my company's lobby screen (Vuo's 4k performance on a brand new Mac Mini isn't amazing, but we're using the frame interpolation built into the TV to smooth things out...that thing I typically disable immediately actually proved useful! haha). Hopefully I can post more about it soon! :)
The company branding has changed dramatically in the past 6 months, so I don't think there's any need to keep our old files proprietary. It was kinda silly, but I just wasn't sure I could share them before. Sorry for the delay. :D
- Triangles.qtz - this is the background-only version I used for a lot of testing (it's still the screensaver I have on the 2010 laptop, runs great) and I'm not seeing the matching Vuo composition on this computer. Sigh. Only the ones that included the isolines, so...that's partially helpful.
- Isolines.qtz - original screensaver I was trying to port into Vuo (this probably isn't the one I was using for performance testing, which may have been more stripped down)
- Isolines-ShaderToy.vuo - this should be pretty close to the qtz file above, using ShaderToy (all of the settings had to be baked internally, but it worked)
- Isolines-ISF.vuo - this was the second port I made, using ISF (hey! it supports settings again! yay!)
- Isolines-ISFsimple.vuo - lines-only version, which I naturally don't have a matching quartz composition for, but hey, why not include it!
- I've included the ISF shader files in the "Modules" folder, and the images required for running the Vuo compositions are in the folder root.
I've also made my ShaderToy pages public...
I'm running into this same issue! If you don't need partial opacity, it can almost be crudely patched by rendering dots on top of every joint (create points mesh), but the elements don't layer nicely, and it doesn't work for what's supposed to be a connected transition.
Additionally, fixing this properly would benefit from improving the UV mapping (continuous across the entire line, not per-segment).