32-bit or 64-bit?

All topics on WaveLab 9 and WaveLab Elements 9
User avatar
Arjan P
Senior Member
Posts: 2527
Joined: Wed Dec 15, 2010 6:28 pm
Contact:

Re: 32-bit or 64-bit?

Post by Arjan P » Fri Nov 17, 2017 10:52 pm

Good explanation, Philippe, though quite theoretical. If a mix is so complex that the 32/64 difference becomes audible, I think there will be other issues to worry about.. And for Wavelab I would think all this is even less relevant.
--- "If anyone owes it all to Bach, it's God" - Emil Cioran ---
SOFT: (All 64 bit) | WaveLab 9.5.50 | Cubase 10.0 | HALion 6.0 | Win10 Pro - SoundCloud
HARD: i7-950 | Asus P6TD | 30GB | Tascam DM-3200 | DigiMax48 | Midisport 8x8 - SoundByte Studio

Rat
Member
Posts: 685
Joined: Thu Dec 16, 2010 6:33 am
Contact:

Re: 32-bit or 64-bit?

Post by Rat » Sun Nov 19, 2017 8:02 am

Thank you for the explanation PG!
Regards

Paul

Paul Rat Blakey
12th & Vine Post

Windows 10 Professional (x64), Intel Core i7 7700 Quad Core LGA 1151 3.6 GHz CPU, 32 GB RAM, Gigabyte Z270M-D3H LGA 1151 mATX Motherboard, 2 x Intel Pro 5400S Series 256GB SSD (system and session drives), RME HDSPe AIO, Mytek converters

WaveLab 9.5 Pro current release, ProTools, iLok, DMG (Dave Gamble), Sony Oxford, Weiss, Class A Solid State and Custom Stuff

User avatar
toader
Member
Posts: 865
Joined: Fri Jan 14, 2011 1:37 am
Location: Denver, Colorado, USA
Contact:

Re: 32-bit or 64-bit?

Post by toader » Sat Dec 30, 2017 7:40 pm

I’m assuming 64-bit processing within WaveLab is on the near horizon? :-)
Computer 1: Cubase 10.0.15, RME HDSPe AES (x2), RME HDSPe AIO (x1), Nvidia NVS 510 video card, Dell T7500 workstation with Intel Xeon X5690 (6 cores with hyperthreading) 3.47gHz, 24GB RAM, UAD-2 Quad, Windows 10 64-bit
Computer 2: Wavelab 9.5.40, RME HDSPe AIO, AMD Radeon RX 480 video, Dell XPS 8720 with Intel I7-7700 CPU (4 cores with hyperthreading) 3.6gHz, 24GB RAM, Windows 10 64-bit

Todd Loomis @ https://noiseradiationstudios.com

PG
Moderator
Posts: 6779
Joined: Wed Dec 15, 2010 6:15 pm
Contact:

Re: 32-bit or 64-bit?

Post by PG » Sat Dec 30, 2017 8:32 pm

Short distance horizon
Philippe

User avatar
toader
Member
Posts: 865
Joined: Fri Jan 14, 2011 1:37 am
Location: Denver, Colorado, USA
Contact:

Re: 32-bit or 64-bit?

Post by toader » Sat Dec 30, 2017 9:31 pm

PG wrote:
Sat Dec 30, 2017 8:32 pm
Short distance horizon
Cool :-)
Computer 1: Cubase 10.0.15, RME HDSPe AES (x2), RME HDSPe AIO (x1), Nvidia NVS 510 video card, Dell T7500 workstation with Intel Xeon X5690 (6 cores with hyperthreading) 3.47gHz, 24GB RAM, UAD-2 Quad, Windows 10 64-bit
Computer 2: Wavelab 9.5.40, RME HDSPe AIO, AMD Radeon RX 480 video, Dell XPS 8720 with Intel I7-7700 CPU (4 cores with hyperthreading) 3.6gHz, 24GB RAM, Windows 10 64-bit

Todd Loomis @ https://noiseradiationstudios.com

User avatar
Aivaras
Junior Member
Posts: 96
Joined: Sat Dec 25, 2010 4:27 pm
Contact:

Re: 32-bit or 64-bit?

Post by Aivaras » Mon Jan 01, 2018 2:02 am

Justin P wrote:
Fri Nov 17, 2017 2:01 pm
I had a feeling that the reason would be more about the bigger picture. Just because you can't hear something directly doesn't mean it won't have a bigger affect down the line adding some "digital fog" as you say.
We do hear the cumulative effect. We may not hear its small constituents in isolation though. A good way to explore the phenomenon is to take a heavily processed mix and compare it to what it used to sound before mixing and processing. The sound of the non-processed tracks is likely to have more clarity and integrity. It's raw, it's unfinished but somehow better-defined. Whereas the sound of the mix exhibits a generic kind of smearing that wasn't there in the beginning. I call it ACE (the audio condom effect).
Aivaras
Garsų menė

User avatar
nordlead26
Member
Posts: 376
Joined: Wed Mar 09, 2016 10:45 pm
Contact:

Re: 32-bit or 64-bit?

Post by nordlead26 » Wed Nov 28, 2018 9:09 am

PG wrote:
Fri Nov 17, 2017 9:54 am
The interest of 64 bit float is not about "headroom" / "dynamic range"...

pro:
  • no need to convert between 32 bit and 64 bit float: 64 bit is needed by some plugins for their internal computations. 64 bit then means: small performance gain and no precision lost between succeeding 64 bit plugins.
  • Better audio precision when mixing audio signals. I explain this at the end of this message.
  • If audio devices ever go beyond 24 bit precision, 64 bit float will be needed (because 32 bit float means, in fact, 24 bit precision)
con:
  • requires more memory, which can mean a performance lost (more memory to move). But as soon as a sophisticated plugin is used, this one is likely to become the bottleneck, compared to the memory overhead. Therefore, this is a "relative con".
  • 64 bit CPU instructions are as fast as 32 bit instructions, because the CPUs are 64 bit today. But certain rare instructions are faster with 32 bit float, because the CPU can conjugate 2 of them while in the same time, only one 64 bit instruction is performed (SIMD).
Now, an explanation about 32 bit float vs 64 bit float, for mixing.
While 32 bit float means in fact 24 bit precision, 64 bit float means in fact 48 bit precision. This means, far more precision.
I can illustrate this difference with elementary school maths (this is an analogy of what happens in reality).
  • Let's say samples can have only values 0, 1, 2, 3, 4, 5,...
  • Let's start with a sample that has value "3"
  • An audio gain of "divide by 2", is applied. We get the value "1.5", but this value is not allowed hence must be rounded, eg. the new value becomes 1.
  • Later another gain "multiply by 2" is applied. The new sample becomes "2".
Consequence: we started from value "3" and ended up with value "2", while the two gains should have cancelled each other.

When this kind of loss is performed multiple of times (complex mixing), then errors stack up.
The consequence is not dramatic, because some errors are (randomly) compensated by others (round-down / round-up), but this compensation actually means "digital fog" aka noise.

64 bit float processing pushes the digital fog far from the 24 bit domain. Hence a cleaner result at the end of the audio chain.

The difference 32/64 is therefore about "audio definition", if your ears can sensible enough. But that's another topic!

Somewhere I read it this:


It's too pointy and floaty. I prefer 64 bit fixed lines.

In terms of audio formats and processing, it's about noise floor and headroom. Since 32 Bit float has 1600 dB headroom, not a problem (ever). As for noise floor, it can only matter for certain mathematical processes under specific conditions. Filter design is an example, however both FL Studio 32 and 64 Bit, already use extended precision (80 or 64 Bit) where necessary.

It's certainly not something an end-user needs to worry about and definitely not any use as an export format.
Because they decided to bite the bullet (in terms of code refactoring) and do it for marketing and feel-good purposes. It certainly does no (audio) harm to use full 64 Bit internal processing, but it does no good compared to 32 Bit float either...

WHEN - you use 80 Bit and 64 Bit precision internally where it matters (which FL Studio does). But only where it's necessary. Again, this is not a real issue. If you use plugins, and everyone does, this is where it matters. And plugin developers who know their stuff all use double precision internally, where it matters, but some don't too. The DAW is not your concern here. Plugins really are.

We feel no need to shout about it.

But this is another of those no-win conversations with people who don't understand DSP. Bigger numbers are always better, and if your number is smaller than the other guys. You will feel inferior. My favorite is watching people argue about why a -385 dB noise floor is better than a -144 dB noise floor ... while listening to a file with a - 96 dB noise floor on equipment with a -80 dB noise floor :)

Since recording has a specific meaning. There is no 24-bit recording on the planet that makes use of 24 bits. The noise floor of the highest quality audio gear is around 18-20 bits.


PG, whats your opinion about this?
Cubase Pro 9.5.50 x64
Windows 10 x 64bit
Intel Core i7 860
20 GB RAM
audio interface MOTU 828 MKII

pwhodges
Member
Posts: 456
Joined: Fri Dec 17, 2010 12:29 am
Contact:

Re: 32-bit or 64-bit?

Post by pwhodges » Thu Nov 29, 2018 12:56 pm

Remember that while mixing you don't (I hope) keep everything jammed up against digital full-scale all the time, so a few extra bits at the bottom are necessary to allow for that. Also, the problem is not so much the exact number of bits to sufficiently represent a single signal with adequate SNR, but more the accumulation of noise from errors (such as PG described) or dither (which fully compensates for those errors, but at the cost of added noise) at multiple points every time the audio is processed - which can be many, many times in modern practice.

Finally, as PG noted, modern hardware is 64-bit anyway, so there is nothing to be gained by wasting effort advocating for not always using it.

Paul

User avatar
stefanoC84
New Member
Posts: 3
Joined: Sat Dec 22, 2012 2:11 am
Location: Karlsruhe
Contact:

Re: 32-bit or 64-bit?

Post by stefanoC84 » Thu May 16, 2019 6:53 pm

Thank You for this Explanation PG!
PG wrote:
Fri Nov 17, 2017 9:54 am
The interest of 64 bit float is not about "headroom" / "dynamic range"...

pro:
  • no need to convert between 32 bit and 64 bit float: 64 bit is needed by some plugins for their internal computations. 64 bit then means: small performance gain and no precision lost between succeeding 64 bit plugins.
  • Better audio precision when mixing audio signals. I explain this at the end of this message.
  • If audio devices ever go beyond 24 bit precision, 64 bit float will be needed (because 32 bit float means, in fact, 24 bit precision)
con:
  • requires more memory, which can mean a performance lost (more memory to move). But as soon as a sophisticated plugin is used, this one is likely to become the bottleneck, compared to the memory overhead. Therefore, this is a "relative con".
  • 64 bit CPU instructions are as fast as 32 bit instructions, because the CPUs are 64 bit today. But certain rare instructions are faster with 32 bit float, because the CPU can conjugate 2 of them while in the same time, only one 64 bit instruction is performed (SIMD).
Now, an explanation about 32 bit float vs 64 bit float, for mixing.
While 32 bit float means in fact 24 bit precision, 64 bit float means in fact 48 bit precision. This means, far more precision.
I can illustrate this difference with elementary school maths (this is an analogy of what happens in reality).
  • Let's say samples can have only values 0, 1, 2, 3, 4, 5,...
  • Let's start with a sample that has value "3"
  • An audio gain of "divide by 2", is applied. We get the value "1.5", but this value is not allowed hence must be rounded, eg. the new value becomes 1.
  • Later another gain "multiply by 2" is applied. The new sample becomes "2".
Consequence: we started from value "3" and ended up with value "2", while the two gains should have cancelled each other.

When this kind of loss is performed multiple of times (complex mixing), then errors stack up.
The consequence is not dramatic, because some errors are (randomly) compensated by others (round-down / round-up), but this compensation actually means "digital fog" aka noise.

64 bit float processing pushes the digital fog far from the 24 bit domain. Hence a cleaner result at the end of the audio chain.

The difference 32/64 is therefore about "audio definition", if your ears can sensible enough. But that's another topic!

Post Reply

Return to “WaveLab Pro 9 | WaveLab Elements 9”

Who is online

Users browsing this forum: No registered users and 2 guests