Doubled CPU cores, performance drops?

This forum is for discussing Reason. Questions, answers, ideas, and opinions... all apply.
Post Reply
User avatar
veasy
RE Developer
Posts: 15
Joined: 30 Nov 2019
Location: NL
Contact:

14 Oct 2020

Hello,

I recently upgraded my PC (a server) with 4 processors. It had 24 cores (4 x 6 cores with 6 threads a core) @ 2.66 Ghz and has now 40 cores (4 x 10 cores with 10 threads a core) @ 2.40 Ghz. So it almost doubled the amount of cores.
But Reason didn't perform better, it performed worse.
As I found out in the Windows Resource monitor, only 32 of the 80 cores/threads are used, while with the old processors it used all (it seemed).
See the attached image:
REASON_CPU.png
REASON_CPU.png (109.63 KiB) Viewed 2468 times
After some digging I found out that Reason isn't programmed to be multi core / multi threading the audio, it does some GUI and other stuff. But not the audio (it seems) and I don't know, but it's called a DAW and you should expect the A is handled multi core as well.
Also I found out that Reason only dedicates 1 core to VSTs.
That's why I wanted an upgrade in the first place, when a small project get's larger you soon hit the DSP wall.

So I tried Reaper and it handles everything way better, performance OK, all the cores used.
So just ReWire Reason into Reaper right? Wrong, from Version 11 Reason does not support ReWire anymore. Why? It's Propellerheads invention.
It even shows in Reapers about box, because Reaper does support it.

OK, so now you can use the VST 3 Reason Rack Plugin. Perfect! Ehhh... but the plugin has limitations, only 1 rack space, in VST windows you can only see a small portion of it, not very handy and making a larger project in the rack is not going to be easy. Also Control Surfaces are not supported. And when adding a Reason Rack Plugin to every track works, but you cannot change parameters by CV. Or maybe there is a workaround for this, through MIDI? IF so, please let me know.

Then I tried Ableton Live and wow! Even less CPU usage. I've been adding heavy VSTs and racks and... and still around 2%!!
It also handles my VST windows better and with some tweaking I can make it look like Reason (working on 3 screens, tracks on the left, timeline on the right and VSTs in the middle).

So my questions:
- Is Propellerhead ever going to make Reason truly multi core / multi threaded? I sure hope so, because I love the workflow and loved it since version 3.
- Is the Rack plugin going to be multi rack, so you can put devices next to each other horizontally?
- Is it possible to exchange CV from one Rack Plugin to the next?

Thank you!

System:
HP Proliant Dl580 G7
Primary SSD: Samsung Evo 256 GB (500+ MB/s)
Secondary SSD: M.2 Samsung Evo 512 GB (1500+ MB/s)
RAM: 64 GB
OS: Window 2019 Server
CPU: 4 x Intel Xeon E7-4870 (before: Intel Xeon X7542)
Reason version: 11 Suite
Selected in Audio settings under Perfomance: Everything (Use multi-core audio rendering, use hyper-threading audio rendering, Render audio using audio card buffer...)
Soundcard: MR18 by Midas

Tested Reaper version: 6.14/x64
Tested Ableton version: Live 10 Suite (10.1.25)
Last edited by veasy on 14 Oct 2020, edited 2 times in total.
:re: Dev of the ReArranger and ReTrigger
https://www.reasonstudios.com/shop/browse/?q=veasy
ReArranged Hang:

User avatar
Loque
Moderator
Posts: 11170
Joined: 28 Dec 2015

14 Oct 2020

No problems here.

Maybe you should give some more infos. OS? Reason version (11?)? Multi-Core and Threading Settings in Reason? Buffer size? Settings of CPU in the VST your are talking about?

And you should be aware, that your new CPU might be slower in single core performance, which is the most important if you have a complex audio signal chain.

And finally, how do you measure CPU load? Are you sure, the CPU is really doing something or just in a busy loop, waiting for Reason to process some commands? Did you created similar projects in both DAWs? Do you hear drop outs?

To answer your questions:
- From my POV Reason is fully multi-core.
- Ask Reasonstudios directly or make a feature request.
- Yes, via cv->audio->audio->cv conversion, since DAWs do not support CV.
Reason12, Win10

User avatar
veasy
RE Developer
Posts: 15
Joined: 30 Nov 2019
Location: NL
Contact:

14 Oct 2020

Hi Loque,
I've updated the first post with system specs.
My single core performance is indeed just a bit slower, the X7542 ran on 2.66 Ghz and the new E7-4870's run at 2.50 (not the 2.40 advertized).
I open the resource monitor in Win 2019 Server to see all my CPUs (80 in total because of the threading) and when I run Reason I can see it only uses a small portion of them. Reaper uses all of them as well as Ableton Live, but Ableton performs better.
So, maybe there is a limit on the total amount of cores, I will ask the Reason guys.
I also applied to be a beta tester, maybe I can bring it up there.
I will check out the cv->audio->audio->cv conversion! Thanks for the idea!
:re: Dev of the ReArranger and ReTrigger
https://www.reasonstudios.com/shop/browse/?q=veasy
ReArranged Hang:

User avatar
Loque
Moderator
Posts: 11170
Joined: 28 Dec 2015

14 Oct 2020

A hard coded CPU core limit came into my mind too. But most of the time it has obvious numbers, like 10, 26, 24, 36 and so on. Here only official support can help.
Reason12, Win10

User avatar
veasy
RE Developer
Posts: 15
Joined: 30 Nov 2019
Location: NL
Contact:

16 Oct 2020

I've asked Reason Studios and yes, the number of cores is hardcoded to 32 right now.
I've also asked if this can be changed, but not at the moment.
The question if this will change in version 12 is pending...
:re: Dev of the ReArranger and ReTrigger
https://www.reasonstudios.com/shop/browse/?q=veasy
ReArranged Hang:

User avatar
Loque
Moderator
Posts: 11170
Joined: 28 Dec 2015

16 Oct 2020

veasy wrote:
16 Oct 2020
I've asked Reason Studios and yes, the number of cores is hardcoded to 32 right now.
I've also asked if this can be changed, but not at the moment.
The question if this will change in version 12 is pending...
Strange. There is no reason to hardcode such things. Such a small number can have a big impact of everything around it relies on it.
Reason12, Win10

User avatar
veasy
RE Developer
Posts: 15
Joined: 30 Nov 2019
Location: NL
Contact:

16 Oct 2020

I've also asked why Reason is taking so much CPU even when it's not doing anything.
Reply: Reason is constantly stand-by for real-time audio processing, that's why it uses DSP even when it's not playing.
I don't understand, but Ableton Live is standby just the same and is not using any CPU.
I understand that the SSL mixer might take some CPU for drawing and DSPing, but so does AL.
Of course AL is more simple in it's drawing and not DSPing anything by default, but the difference in CPU is way too huge.

Right now I've come to the conclusion that I will use an 8 core 3 Ghz for the Reason workflow, then send out that audio via Dante Virtual Soundcard to the 40 core server and run only Ableton on it, so I can add hundreds of VSTs on the channels.

And wait for version 12 that might (hopefully) handle more cores, so I can use 1 machine for everything. Or maybe even 11.4 (crossed fingers).
Another option would be a Reason Rack Plugin that can go full screen and have more racks horizontally, so you can do your workflow directly in AL or any other DAW that handles CPU more efficiently.
:re: Dev of the ReArranger and ReTrigger
https://www.reasonstudios.com/shop/browse/?q=veasy
ReArranged Hang:

User avatar
mcatalao
Competition Winner
Posts: 1824
Joined: 17 Jan 2015

16 Oct 2020

In a system like yours with that CPU count and limit of cpus in reason, I'd disable Hyper threading, because you don't control where the load is added. If possible disable HT in the bios and in reason so you can be sure the load is going to physical cpus rather than to the virtual cpus (the second thread in each core). I say this because HT is not very useful for audio, and it seems to me from your pics, the os is filling the first 2 cores and leaving the other 2 alone. Multi CPU arrangements are different than single CPU's. So what i mean is that, there is no use for 80 threads, if half of them only add a medium of 10 to 30% performance depending on the program, and in audio that is not necessarily real(despite what other daws might show you in their cpu load). So in reality if each second pair gives you only 1/3 of the additional performance of a phisical CPU its as if you had 10 strong XEon cores and 3 or 4 additional bogus cpu's that might even be pulling you back for memory sharing reasons.

Second, this kind of systems uses NUMA for memory spreading, which is a bit slower than normal direct handling (and the reason it's best to have a single CPU arrangement for audio than multi cpu's).
Numa is a good option for normal asynchronous and parallel data transfers but it's a bit slower and creates issues with audio, so I would check if your system can handle disabling it or at least find a better setting for synchronous processing. Also Reason is not (to my knowledge) numa aware, and apps that run on these systems have to be set up for numa.

Last but not least, Multi CPU systems are great for stuff that you can make parallel, like sites, video rendering, even for non synchronous audio rendering like exporting a project in reason, but for this kind of application, i would recommend a different approach like a Intel® Core™ i9-10980XE or the Xeon equivalent with 24 cores. At best, i'd go with just 2 numa cores and the maximum single core possible because as Loque said, a big CPU count with a very low single core can be an issue (DSP performance has more to it than simple brute processor use).

IMHO, you'd be better off with a system that allows you to "outsource" some stuff to other machines and buy 2 or 3 different machines. I think it would even be less expensive, but if you invested in such a machine for Reason I'd say money is not a constraint for you. Anyway, there are lots of options in the market from the more "open source" ones, like having a bunch of devices running on your daw and route midi to them with Loop Be (you can do this with one machine) or have a nice setup with VSL and run any plugin inside it on another machine.

If you're savvy with Cubase you already can do this, but i think you need multiple licenses (that's why it's probably the most used DAW by soundtrack composers) as the midi implementation is very good, and load spread facilities are also quite good. You can also do this with multiple reason Licenses.

Anyway... You got me curious about the kind of projects you do to need such a beast!!! I've already worked with this kind of machines but always in data and user/server program, never in audio! :)

User avatar
mcatalao
Competition Winner
Posts: 1824
Joined: 17 Jan 2015

16 Oct 2020

PS.: Be sure to measure performance looking at the DSP and counting device instances. CPU usage can be low and yet DSP high due to a single too big device chain. And with a 2.6 GHz speed the chains might be a bit smaller but it shouldn't be that much (it's not a big difference).

User avatar
WasteLand
Posts: 131
Joined: 04 Jun 2018
Contact:

17 Oct 2020

the 2.5 GHz speed is quite low, for single core performance. yes there ISP, speed does not count always..
that is the problem with multi-core systems, already stated. for audio need to balance single core performance and the number of cores.
the audio thread is always on one core. people say that there are solutions, but still it won't work well.

and some plugins work on one core (for example soft modulars, they must do everything 1 sample at a time..).

so if you are using it only for audio (for video it is perfect, because frames can be rendered multi-threaded), single core performance preferable over a high core count.
or a cpu with a lot of cores and a high single core performance...
Win 10 Pro. R11 suite + R12. Nektar Panorama p1. Ryzen 9 5900X. Cubase Pro 11, Bitwig Studio 4.4, Reaper 6.68, Ableton Live 11 Suite. RME Hammerfall DSP Multiface.

https://soundcloud.com/sada-exposada

https://soundcloud.com/user-873737123

User avatar
veasy
RE Developer
Posts: 15
Joined: 30 Nov 2019
Location: NL
Contact:

17 Oct 2020

I've changed the BIOS to 'disable Hyperthreading' and YES the performance is way better, my 'old' files load and play, but of course the previous processors perform better due to the higher CPU speed. Of course now only 32 cores are used as well. I guess Reason Studios calculated 2 CPUs with 16 cores is the max in 2020. Payable at least.

So thans to macatalao for the suggestions, the other suggerstions you made are not in my BIOS.
I might be able to update the type of DIMMs to faster ones, but I don't think I'll invest in that.

About the cost. This is actually meant to be a more affordable option (in euros):
- 450 for the DL570 G7 with 64 GB RAM + 4 x GB NIC, no HDDs
- 100 for an upgrade to the X7542s 2 years ago (but can be sold again online, might get 65 back for them, but keep 'm right now)
- 65 for the upgrade to the E7-4870s last month (AliExpress)
- 100 for the bootable 256 GB 500+ MB/s SSD (Samsung EVO)
- 125 for the 512 GB 1500+ MB/s M.2 SSD (Samsung EVO)
- 20 for PCIe adapter for the M.2 SSD with cooling fan and ribs (AliExpress)
- 150 for the RX 570 (last month for a 3 x DisplayPort Quad HD monitor setup (3 x 179 euros)
- 20 for a special cable to power a videocard with 6 and/or 8 pin (200+ at HP, 20 at AliExpress)
- 25 for a USB 3 PCIe card (AliExpress)

I had to do some soldering with some wires to be able to power the USB 3 card and the motherboard is PCIe version 2, so my videocard is not reaching the full specs. Also the best slot for it is PCIe x8 and not x16, but I'm not gaming and experience no problems. I read some tests and the performance is not recuced by half, but by some 5 - 10 %, the articles stated.

Of course I can build a more recent server (and hope it boots on an M.2 SSD) but then the processors are still very expensive, I keep an eye on them though.
And of course I can build a normal PC with everything the highest specs and watercool all the components for max performance. Is also in my mind, but because the components are not dropping in value (like they used to before the euro even excisted) it is going to cost me around 2500 - 3000 euros with the watercooling (and I mean ALL the components) included.

So, that said, I'm happy I can work with the machine, but I'm also learning Ableton Live and as said, I will make 2 identical files (same number of tracks, same type of instruments, same VSTs and show you the CPU performance, because (with and without Hyperthreading) Ableton Live blows my mind. I have not gotten it over about 5% and while some VSTs in Reason will up the CPU usage by 10 or 15% an instance, Ableton doesn't even blink.
Also my sound card can be set to 256 samples @ 48000 and in Reason 2048 is quite safe.

I've applied for beta testing Reason, I hope I get admitted, because then I can be a good tester for multicore performance.
I love the Reason workflow since I started (version 3 or so) and would love to stay working with it, but they should start building a version from the ground up with just performance in the back of their minds, otherwise I'm afraid in the future more people will start using third party software.

And when the Reason Rack Plugin has grown to a full sizeable VST, where you can truly have a complete rack that can be spread over multiple monitors and have the same amount of rack space as the normal version I will combine it with Ableton Live.
Hopefully by then they found a solution for REs that use Control Surfaces as well, cause I'm about to finish one ;-)

And the combination with multiple machines <--> Dante stays open as well, that way I keep using my beloved DAW!
:re: Dev of the ReArranger and ReTrigger
https://www.reasonstudios.com/shop/browse/?q=veasy
ReArranged Hang:

User avatar
dannyF
Posts: 359
Joined: 14 Jun 2019
Location: Uranus

17 Oct 2020

I noticed that if I pull out my audio card from USB ( mac ), reason stays open and performance goes right down since there is no audio card. But I can leave Reason open and it only uses 5% cpu.

Vyckeil
Posts: 119
Joined: 25 Jun 2015
Location: Canada

22 Oct 2020

Server CPUs are not well suited for real-time processing. More cores doesn't necessarily mean more better in all circumstances. Latency plays a really important role in CPU computational power, and I'm talking about CPU cache amount and fetches, the core cross-talk (more cores have to "talk" to each other, increasing latency), the way the CPU communicates with the RAM, the motherboard can influence latency between components and their architecture is different from standard motherboards, etc. Watch any techtuber testing a server CPU in gaming and you'll notice that the performance drops like an anchor in water. Much like audio, games are processed in real-time. Most server CPUs are pretty bad for real-time processing, especially old ones.

It's important to note that single core performance measured by IPC (instructions per clock) and clock rate is still quite important today. The one that you upgraded from is from 2011, which is really old and doesn't have as much IPC as newer CPUs. Also, the core clock is only 2.5 ghz which is really slow by modern standards. Most consumer CPUs can hit about 4 ghz. Not only that, but those old Intel CPUs received a crazy amount of patches to fix many security flaws that decreased their performance by a measurable amount.

Sorry to say this to you bluntly, but this was a bad purchase for running Reason.

User avatar
veasy
RE Developer
Posts: 15
Joined: 30 Nov 2019
Location: NL
Contact:

22 Oct 2020

Hi Vyckeil, thanks for your post. Although I was well aware of the age of the server when I bought it, it served ( ;-) ) me very well, even with Reason. The suggestions made by mcatalao were really helpfull and if Reason Studios decides to up the hardcoded number of CPUs I can still use it a lot longer. I'm also going to build a modern PC too, that's for sure.
Mutli-threading is now off and it works fine again...

...But!!!....

Yesterday I did another comparison between Reason and Ableton Live. I added 1stereo WAV file (about 1 Gig) to an empty Reason file and then exported the track to a new recording on disk. I did the same with AL.

Hold on to all you got now... (quoting Jerry Lee Lewis)...

In the Windows Resource monitor my CPU usage went up directly to 60+ %. All my 32 of 40 cores showed the same image as the image I posted in the first post (above). For the total duration of the export. I did not select anything in the output window, so no normalizing, no processing, Apply mixer settings: None, (it had no VSTs to go through and nothing in the SSL was selected, changed or working). Just exporting the WAV to disk.

Ableton live went from 2% to 4% and was way faster.

So, IMHO I think Reason needs to be rebuild from scratch with CPU usage in mind. Because, even with modern processors, you would want your DAW to use as little CPU as possible, so you can keep stacking FX, VST, VSTi, recordings, etc, as much as you prefer, right?

As a matter of fact, I tried Reaper, Studio One, Renoise, ... and they all outperform Reason by a factor of 25 or so. That is way, way, way to much. OK, maybe Reason has a SSL chain added to every track by default, but that shouldn't mean that if functions are not used, the CPU usage can grow. In my test I had only one stereo track. 60% CPU usage? Come on, server or no server, 2.50 Ghz or 4.00 Ghz, shouldn't matter.
As far as I can tell, if I would use Ableton Live (or 'any other DAW than Reason') my server can last another 10 years without any issues.
And afraid to say, I'm learning Ableton Live now, hoping the Reason Rack Plugin will get full screen and multi-rack-space (horizontally), so I can create a Reason-like Situation in Ableton.
I prefer the Reason Flow., but then it should perform close to other DAWs.
:re: Dev of the ReArranger and ReTrigger
https://www.reasonstudios.com/shop/browse/?q=veasy
ReArranged Hang:

Vyckeil
Posts: 119
Joined: 25 Jun 2015
Location: Canada

23 Oct 2020

veasy wrote:
22 Oct 2020
So, IMHO I think Reason needs to be rebuild from scratch with CPU usage in mind. Because, even with modern processors, you would want your DAW to use as little CPU as possible, so you can keep stacking FX, VST, VSTi, recordings, etc, as much as you prefer, right?

As a matter of fact, I tried Reaper, Studio One, Renoise, ... and they all outperform Reason by a factor of 25 or so. That is way, way, way to much. OK, maybe Reason has a SSL chain added to every track by default, but that shouldn't mean that if functions are not used, the CPU usage can grow. In my test I had only one stereo track. 60% CPU usage? Come on, server or no server, 2.50 Ghz or 4.00 Ghz, shouldn't matter.
As far as I can tell, if I would use Ableton Live (or 'any other DAW than Reason') my server can last another 10 years without any issues.
And afraid to say, I'm learning Ableton Live now, hoping the Reason Rack Plugin will get full screen and multi-rack-space (horizontally), so I can create a Reason-like Situation in Ableton.
I prefer the Reason Flow., but then it should perform close to other DAWs.
I agree with what you said. I've noticed serious performance issues since they implemented multi-threading in Reason (since Reason 9 I think?). Then they added delay compensation and screwed it up even more. I did my own tests also and I can confirm what you've said. Recent version of Reason are really, and I mean REALLY terrible with performance. I've been using Reason since version 2 and recent versions of Reason are atrocious in their CPU utilization. Reason should perform just as well as other DAWs, but it's sadly not the case.

With that said, I still stand by my comment. The CPU was a bad purchase for Reason, not a bad purchase in general. The fact that the CPU works well with other DAWs doesn't matter, it's Reason that's just doing terribly with its performance. Most people here are in love with Reason, only use Reason, and are quite computer hardware illiterate, so saying that a server CPU is a bad purchase helps more than it hurts. Clearly you've done your research and seem quite capable, so I'm relieved to read that.

I do have to disagree with your comment on clock speed though. Having high clock speeds certainly matters. Not all coding can be multi-threaded and have to be processed on a single core, and there's not amount of magic or genius software developer that can fix that. The only fix to that is higher CPU frequency, there's no way around it. Not only that, but higher clock speeds increase performance of all cores so it's still a very relevant metric.

Good luck with your performance issues and with your music-making!

User avatar
veasy
RE Developer
Posts: 15
Joined: 30 Nov 2019
Location: NL
Contact:

23 Oct 2020

I do have to disagree with your comment on clock speed though. Having high clock speeds certainly matters. Not all coding can be multi-threaded and have to be processed on a single core, and there's not amount of magic or genius software developer that can fix that. The only fix to that is higher CPU frequency, there's no way around it. Not only that, but higher clock speeds increase performance of all cores so it's still a very relevant metric.
Cool! I did not know that. Good to know!
:re: Dev of the ReArranger and ReTrigger
https://www.reasonstudios.com/shop/browse/?q=veasy
ReArranged Hang:

User avatar
mcatalao
Competition Winner
Posts: 1824
Joined: 17 Jan 2015

28 Oct 2020

Hi, there can be a lot of reasons to the performance of the export be worse in reason, like you said, the audio will pass trhough the mixer channel, though imho that's not what is causing the performance at the export.

My thought in that goes to the timestretch algorithm that is on by default in Reason and its not on by default in other DAWS. So I'd disable the strech on the track and the export to compare. Moreso, the way an export works in reason and on other daws can be different. Imagine that other DAWs have a test to see if there's something altering the file and if there's nothing in the audio path, it just spits the audio out? As reason has everything passing through the audio channel, by design it can't "disregard" these pathways, so they are programmed and static and enabled all times.

But, if you can, do the same test with time stretch off on the channel track because my intuition tells me it has something to do with it.

Cheers,
MC

User avatar
EnochLight
Moderator
Posts: 8405
Joined: 17 Jan 2015
Location: Imladris

28 Oct 2020

veasy wrote:
14 Oct 2020
But Reason didn't perform better, it performed worse.

Thank you!

System:
CPU: 4 x Intel Xeon E7-4870 (before: Intel Xeon X7542)
One Xeon E7-4870 CPU's single-core performance is literally half the performance of my almost 10 year old desktop i7-3770K (which has felt long in the tooth to me for years). Buying 4 does not help that single-core performance at all.

I know you've already been told this, but that CPU purchase was a very bad choice for modern music making, IMHO. :o :shock: :?
Win 10 | Ableton Live 11 Suite |  Reason 12 | i7 3770k @ 3.5 Ghz | 16 GB RAM | RME Babyface Pro | Akai MPC Live 2 & Akai Force | Roland System 8, MX1, TB3 | Dreadbox Typhon | Korg Minilogue XD

Post Reply
  • Information
  • Who is online

    Users browsing this forum: DotNetDotCom.org [Bot] and 21 guests