Simple questions on synth tech basics...

DSP, Plugin and Host development discussion.
Locked New Topic
RELATED
PRODUCTS

Post

fluffy_little_something wrote:I am not sure we are talking about the same roll-off. I think there is one at about 16 kHz as well, i.e. well inside the audible range.
http://www-personal.engin.umd.umich.edu ... roject.pdf

To confirm this hypothesis you need to find a circuit where an opamp were used "improperly" such that the gain bandwidth product was near 20 kHz.

Most likely you'll find this property in a circuit where the "wrong" opamp was used at a very high gain such as 100 (+40 dB) to 1000 (+60 dB) or more.

Such extreme gains are indeed used in the pulse shaping (comparator) circuits quite often although typically an opamp such as RC4558 is used which has more than enough bandwidth for this purpose.

If an opamp such as tl072 were used for example, the bandwidth would be potentially quite limited at such extreme gains.

It is of note however that in the sh-101 however the cem3340 is used, where the opamp is contained within that IC and open loop gain is used. This means the opamp is most likely designed specifically for the purpose and that any high-frequency roll-off is well outside the audible range.

See page #6: http://curtiselectromusic.com/uploads/C ... 5_Long.pdf

"The pulse output is an open NPN emitter, ..."

It mentions the fact the comparator gain is limited. It is likely approximately 20 to 50 (my guess) which adds some small amount of even harmonic content to the pulse wave as the 1/gain mid-part of the ramp is not saturated.

There are many other places where roll-off could be introduced but I assure you that it is not in any popular synthesizer circuits I'm aware of.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

stratum wrote: In the past floating point math was very slow compared to integer math but that was a long long time ago.
Now they're both slow...

Floating point got faster. Integer got way, way slower in some cases such as bit-shifts and other binary operations.

At the same time new instructions were introduced. MMX/SSE are now heavily utilized along with conditional move instructions rather than the oldschool bit-twiddling that was faster in the past.

Due to the conditional move operations for example, "if (x) y = z" is now faster than "y = (y&x) | (z&(~x))". The compiler will now automatically optimize with a cmov instruction which also works on floating point values.

Xhip still uses integer multiplication, but it does so with an SSE instruction!
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

Probably correct. I cannot find much time to write assembly code anymore, but I cannot find any time to write any audio dsp code either :-(
~stratum~

Post

aciddose wrote:
stratum wrote: In the past floating point math was very slow compared to integer math but that was a long long time ago.
Now they're both slow...

Floating point got faster. Integer got way, way slower in some cases such as bit-shifts and other binary operations.

At the same time new instructions were introduced. MMX/SSE are now heavily utilized along with conditional move instructions rather than the oldschool bit-twiddling that was faster in the past.

Due to the conditional move operations for example, "if (x) y = z" is now faster than "y = (y&x) | (z&(~x))". The compiler will now automatically optimize with a cmov instruction which also works on floating point values.

Xhip still uses integer multiplication, but it does so with an SSE instruction!
So, if I know processor x is better than processor y in terms of floating-point performance, but worse in terms of integer performance, which processor should I go for in view of demanding plugins with 0df filters and such things?

Post

A desktop processor with the largest amount of cache per core ( a rough guess).
~stratum~

Post

Impossible to say. You can't simplify complex stuff down to one thing like that without removing essential components.

https://en.wikipedia.org/wiki/Computati ... ity_theory

The best processor for a given task is incredibly complex due to the fact it is at best linearly related to the complexity of the task itself and most likely worse.

For example processor X might be better at task A due to considerations I, J, K, L, M, N and O, while processor Y might be better at task B due to Q, R, S, T, U, V, and W. Which processor is better at a combination of tasks A, B and C?



Benchmarks are tests which attempt to make themselves complex enough that their scores can't be forcibly adjusted by the processor "cheating" on those tests, where the tests approximate real-world applications.

Ultimately though the only way to know which processor and which combination of other components will best run plug-ins A, B and C in the ways you use them is to test each and every one of those conditions.

Due to the huge difficulty of such a task, we typically just make a rough guess based upon benchmarks.



For example which country is a better place to wear a pair of shorts and a t-shirt? Brazil, or Finland?

It won't be entirely warm every day and in every location in Brazil, and you might get Zika virus or some other horrible shit like that, although you can be reasonably sure that it is a safe bet to pack your shorts and t-shirt for a trip there.

Meanwhile, you'll probably feel awful sitting in the sauna wearing your turtle-neck sweater and hat.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

fluffy_little_something wrote:Ai, distortion is not for me :P As soon as I hear a distorted guitar, adiós :hihi:

I do use slight filter drive occasionally (like, 1 or 2 on a scale from 1 to 10), but as soon as there is distortion as such, it is too much for me.
With many synths distortion sounds ugly with chords, anyway. On some it is even periodic (as if it were controlled by an LFO), which also sound ugly and artificial.

Not sure why I like slight filter drive. Maybe because it adds some edge, sizzle, and liveliness. On some synths slight resonance does pretty much the same thing.
Distortion has fine gradations. Perhaps I'm remembering wrong, but if I recall-- For instance guitar amps like a nice old Tube Fender Bassman or Super Reverb, playing at decent stage volume as clean as you can get it, is in the ballpark of "a few percent" of THD + noise. A percent or three of amp distortion and then another few percent of speaker distortion. But in the realm of guitar that is clean. Most guitarists, even those who cherish a clean sound, would probably be unhappy with an amp + speaker with less than 1 percent total distortion.

A lot of folks tend to like gear that has more distortion than "the cleanest gear you can get". They will pay the big bucks for the "superior sound" of gadgets which measure higher distortion than some of the cheap gear. But it is still "fairly clean-sounding". Doesn't sound like a fuzztone thru a marshal stack.

I've read allegations that ears can't reliably perceive gradations of distortion below 1 percent, but dunno. Just sometimes, people seem to value the gear above 1 percent of "the right kind of distortion" better than the gear less than 1 percent. Not everybody likes a little bit of distortion. Some folks really like the tube EQ's, tube compressors, tape, etc. Which tend toward "more than 1 percent".

Post

Even large amounts of distortion may sound clean to people who do not play the guitar, because they do not know how the sound was produced to begin with and assume that it was clean while the truth is that the guitarist actually plays single notes carefully to avoid amplified scraches and intermodulation distortion.
~stratum~

Post

"Zika viruses" to avoid are low end processors like Intel celeron/pentium/ AMD A series and some "high end" AMD processors (the ones marked 220W, because you do not want to run a stove in your room in a hot summer, but might be good for countries like Norway or Finland during winter, though..)
~stratum~

Post

aciddose wrote:Impossible to say. You can't simplify complex stuff down to one thing like that without removing essential components.

https://en.wikipedia.org/wiki/Computati ... ity_theory

The best processor for a given task is incredibly complex due to the fact it is at best linearly related to the complexity of the task itself and most likely worse.

For example processor X might be better at task A due to considerations I, J, K, L, M, N and O, while processor Y might be better at task B due to Q, R, S, T, U, V, and W. Which processor is better at a combination of tasks A, B and C?



Benchmarks are tests which attempt to make themselves complex enough that their scores can't be forcibly adjusted by the processor "cheating" on those tests, where the tests approximate real-world applications.

Ultimately though the only way to know which processor and which combination of other components will best run plug-ins A, B and C in the ways you use them is to test each and every one of those conditions.

Due to the huge difficulty of such a task, we typically just make a rough guess based upon benchmarks.



For example which country is a better place to wear a pair of shorts and a t-shirt? Brazil, or Finland?

It won't be entirely warm every day and in every location in Brazil, and you might get Zika virus or some other horrible shit like that, although you can be reasonably sure that it is a safe bet to pack your shorts and t-shirt for a trip there.

Meanwhile, you'll probably feel awful sitting in the sauna wearing your turtle-neck sweater and hat.
Look, things are not always as complicated as you put it.
I was comparing my outdated processor to a couple of budget processors yesterday and wondering which is better for dealing with plugins like Diva.
Down in the section Nice to haves, one can see that one is clearly better at floating point, the other at integer calculations:

http://cpu.userbenchmark.com/Compare/AM ... 1029vs2004

I am pretty sure that one of them is better than the other for such purposes. But which? With music plugins single-core performance is still important. My old Phenom is very bad at dealing with demanding plugins. Now, would that new Athlon be better at it because it has clearly higher floating-point performance per core, or would it be even worse than my current processor because it has clearly inferior integer performance per core?

Post

Hi fluffy

Acidose is right about the need to use benchmarks but it's also correct that things are not complex when it comes to such decisions. For audio processing the first thing one wants is a processor which is good at single threaded performance, because it's hard to write programs that use multiple cores efficiently. That means you want an intel processor, one of the core 3/5/7 series. It's as simple as that. It's also a good idea to prefer desktop processors over mobile ones for the same reason. While that rules out many "desktop" apple computers (those mini's and iMacs), there are other things that you may care about that may override your final decision, like some particular software or hardware that you like that runs only on a mac for example.
~stratum~

Post

Nah, I won't get any Intel, die-hard, loyal AMD user for decades :D I am waiting for the new AMD processors due out within weeks, which will render Intel chips superfluous.
Anyway, I know about the importance of single-core performance, yes. But since they distinguish between integer and floating-point in those benchmarks, I assume it does make a difference which of the two types of calculations a given processor is better at. That is my question, especially with respect to demanding plugins.
I don't know much about maths, nor programming, so I can't tell myself... Maybe I will place the question in a thread where Urs from U-he is present :wink:

Post

If it is of any help: VSTi's have to produce floating point data, so one may assume a large portion of their calculations is done in floating point arithmetics.

But if Diva is of utter importance to you, you can call for a Diva Benchmark *) in a new thread. Make one Reaper project with one Diva track in it, and let people test how many times that track can be duplicated before the system is brought down on its knees. Keeping most other things equal apart from the mobo will be rather hard btw...

But imagine, you buy a mobo which blows away the competition regarding Diva performance. Then something happens what makes you like another synth better, and your Diva-specialised mobo has horrible performance on that.
You see, it's best not to be too specialised and remain an all-rounder...

*) There was a simular benchmark done here at KVR Audio in the past, I think it was with a convolution reverb. Not sure though, anyone remember that? And what were the conclusions?
We are the KVR collective. Resistance is futile. You will be assimilated. Image
My MusicCalc is served over https!!

Post

Ah, that's a post that helps :)

No, I am not interested in Diva at all, I just picked it as I know it is a CPU hog. I might as well have picked Lush etc.
My logic is that despite their differences, modern plugins work in a very similar way and only the degree of sophistication of algorithms leads to different results. But if Diva heavily relies on floating-point calculations, then I think it is fair to assume so do synths by Tal, Xils, etc. Not that I would use any of those, so the less sophisticated plugins I use would gain even more from a processor with strong FP performance as I could use many more instances.

Post

The fact that most plug-ins work in similar ways is what lends credibility to the application of benchmarks to compare processor performance.

You can find a number of benchmarks in any review of the processors you're interested in.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Locked

Return to “DSP and Plugin Development”