Retina iMac owners can greatly improve graphics performance of many applications
1014.org
1014.org
But some engineering managers don't care about duplicates, they relay on other things (sometimes only their own judgement) to decide impact and its relation to priority. But very few of us ever know which person is going to make those decisions, and what their priorities are, so it is better to always file your bugs (even if they get duped), and include impact in your filing.
If you want to make life easier for the screeners (who do most of the duping), then look things up on https://openradar.appspot.com, and reference a bug that already does a great job of deciding the problem there. But then include YOUR impact information.
It's also that the whole process seems to be engineered to belittle the user who apparently isn't worthy of being informed of anything. Reported a bug in an API? Well, how about trying it after every release, or writing a test for it? Because you surly don't expect your tiny mind to warrant a one-liner or ticket change when we fix it?
JK! We actually have no intention to fix it. But you do enter the sweepstakes for the "One More Thing That Doesn't Work" award at WWDC for every year that your bug remains open.
For most apps this should be fine, but as deep color gains more prominence be aware of impacts it may have.
Hopefully it doesn't degrade performance on video editing or Pixelmator.
The software is often generating live displays in response to interactive or live input (ie. the audio being synthesised, processed or played); everything from fancy spectrograms to meters showing levels.
GPU features like texturing works great if you can upload everything you need in advance from the CPU, and then re-use it again and again on the GPU side. However, in the case of these sorts of applications that input is one or many audio streams which are constantly changing.
I'd bet you /could/ implement more of the processing on the GPU itself. But audio apps like this are often multi platform and based on existing codebases or plugins. Pixel-pushing to the screen seems rather boring, but it typically throws up fewer bugs; I'd say it makes more commercial sense to spend time working on audio features than debugging GPU issues on a wide range of platforms.
OpenGL makes for fairly portable code, especially if you're doing something extremely narrow like rendering on a 2D texture canvas. It's only when you start to use exotic OpenGL features that you quickly get into trouble.
Did author try to send image with 64 bits per pixel? It should by send to GPU without converting. But If the fullscreen is 15 megapixels, than it's ~120MB per frame.
At least in that instance, the bottleneck was rgba64_image_mark_rgb32(). A perfectly fine little bit of assembly byte shuffling, but not fast enough to handle gracefully the billions of pixels/second being thrown at it.
So many data types! With such long-but-similar-yet-I'm-sure-very-differently-performing names!
It sounds like they are doing all their drawing on the CPU, and using APIs optimized for accuracy; instead of drawing on the GPU using APIs optimized for speed.
It's like using a color printer to print only black text documents, it doesn't make a whole lot of sense in the efficiency department.