I have read many threads about the differences between the Renoise CPU meter and the one in the system. I am aware of the differences, but I wonder about the fact that Renoise seems to show only the usage of one CPU core, even if multiple cores are selected. May this be a bug? Example: I have Native Instruments Reaktor 5 with a nice preset inserted, play around, Renoise shows me around 25% CPU usage, no matter how many cores I activate / select.
Running the same plugin and preset in REAPER shows me a similar usage (around 21%) for one CPU core, but REAPER also reports 4-7% for the overall CPU, around a quarter, which makes sense at 4 cores available.
Yeah, read that one, I still find it really, really weird how it acts and to be honest, the way it currently works makes it practically useless as a feature.
What I as a user expect the CPU meter to tell me is a precise value of what percentage Renoise as a whole uses of the maximum possible capacity of my CPU, depending on how many cores I have Renoise set to make use of.
If it can’t show this information reliably and independent of circumstances and instruments, it can be left out entirely.
With the maximum possible capacity, I mean ignoring any energy saving mechanisms or variable clocking, as the OS handles this. Just take the value of what the CPU could technically do under 100% usage as a fixed reference for the CPU meter.
The only thing that meter is useful for is to know when audio crackles can pop up and that is when the value of that meter hits around the 80% or higher and in that case there is even a threshold toggle in the preferences you can set to trigger autopanic preventing Renoise turns completely unresponsive. That is what it is for and not a fancy feature serving any other purpose.
I wouldn’t call a reliable and precise metering a “fancy feature”. And if the crackle warning is the only purpose, a simple warning light would be less confusing than a variable percentage depending on circumstances and use cases. Crackles should only appear when the CPU is actually under full load, hitting the 100% mark - not “80% or higher”, which is 20%, a fifth of “maybe”… that is simply no useful metering.
It has a reason that there were multiple questions about the CPU meter in the past: it doesn’t show what the user expects it to show.
That depends on what your system (cpu + audio hardware) is capable of handling. You can delay the stuttering and crackling easily if you raise your audio buffers, but nearly everyone demands a 5ms or less response of the audio which puts up more strain on the CPU and the audio buffers and either one of both flakes out (whichever hits its limit the first) so that does not necessarily means your cpu is the culprit if crackling starts at 81%.
If you have a good audio card, you may accomplish 5msecs easily. If you have an onboard Realtek chip, you may very well squeeze your hands together if you can accomplish 8msecs using Asio4all.
But if you expect an exact copy of the taskmanager readout or something that will tell you that your hardware is gonna bust at 100%, the cpu value seems more confusing than helpful here.
Renoise indeed does show a different CPU than task manager. It shows the “relevant” CPU usage, the CPU usage which currently is used in order to calculate audio in real-time.
In other words: how much CPU power in your current setup currently is used in order to be able play back the song. Everything else would be misleading because it’s simply not relevant for real-time audio processing.
Lets say you have 8 CPU cores and are playing back a single VST instrument with all 8 cores enabled.
In this case only one core will actually be used (assuming the VST does no internal multi-core processing - which is the common case).
If you now see a CPU usage of 25% in Renoise this means:
The song (the single VST) is calculated 4 times faster than real-time. 200% would mean that twice the time is needed to calculate the VST’s sound, which then results into crackles because stuff gets played back faster than it can be “delivered” to the audio stream.
If you now add more and more plugins to this song, the other cores will start processing those VST too - in parallel, instead of letting one core, one CPU do all the job.
If you for example add 7 more VST, which all only take up to 10% of CPU power each, you still only have 75% of power left in order to play back the song because the first one still blocks real-time processing most.
So the core which needs longest time to do it’s job is what’s interesting. How things are currently splitted among the cores, and not the sum of all core loads.
It’s still strange how it is being calculated, it makes me think that Renoise is a CPU hog if a single instrument shows a much higher percentage than I would expect and see on the overall (task manager) approach of metering. Reading from the explanation above, the percentage refers to the calculation speed relative to realtime? If that is the case, then “CPU” meter isn’t the right label for it. I do understand the explanation, but I find it hard to keep it in mind while reading the CPU meter. To be honest, I’m even much more confused now.
What I would like to have is at least an option to change the metering algorithm. Here’s how I see it: I have a CPU with a fixed maximum amount of calculations when all cores are used and running at full clocking. And all I want to know is how big the chunk is, that Renoise - as a whole - eats away from that exact maximum value. I’m actually not even interested in the crackle warning functionality, because if they appear, I will naturally perform actions against them in my project. I vote for displaying the CPU percentage with the task manager approach, maybe you can just poll that value from the system and display it.
due to this thread I did a quick google for a taskbar CPU meter and found these, so if you`re a windows person you can get some feedback on total cpu/ram/diskwriting in the taskbar.
Not perfect but may be of use, giving it a go here:
I know how energy-efficient my “car” is, compared to other “cars”.
Also, if every plugin I insert (and I work with VSTs a lot) eats a certain amount of CPU time, I can get a good feeling of how many plugins I can add before reaching my CPU limit.
But the current metering behaves unpredictably, so the percentage does not scale in a linear way with the amount of plugins used, because it doesn’t take a fixed value as a point of reference.
I need that linear scaling though to predict how much stuff I can add.
Seriously, other DAWs do it that way, why does Renoise have to be so special about it. Keep the current algorithm, but there is no argument against providing an OPTION to change it.
Simply because I want to see what I do in Renoise, and not having the task manager opened up in front of it all the time? That would be stupid.
And as I said multiple times, I vote for an option to change it, that means everyone can have the approach he likes better.
Lets say you have 8 CPU cores and are playing back a single VST instrument with all 8 cores enabled. In this case only one core will actually be used (assuming the VST does no internal multi-core processing - which is the common case).
What does the Renoise CPU meter display if the VST does support and use multiple cores, though? Bazille would be an example here. It’s been a bit of a source of confusion for me.