From the original SynthMaker forum (2004–2014), with its members’ names and dates.
Curator_Ami ·
Would it be feasible to use the GPU to perform DFT operations per sample?
It is, after all, designed to perform very large matrix multiplications in very few instructions, which is exactly what the direct computation of DFT is.
Data throughput of a decent fast Gfx card is more than adequate for, say a 1024 point transform, at 44100Hz, for at least 5-10 channels.
CPUs just arent set up for DSP, but GPUs are. Further, ATI are now producing GPU chip designed to fit into CPU sockets (Thanks to AMD opening its socket specification) so uitilising the GPU for all signal processing needs is clearly Futurewards, and would give SM a huge advatange over any other audio software on the market today (AFAIK).
doug4350 ·
Hi Curator_Ami & welcome to the forum...
That would be cool wouldn't it??? For that to happen, I think an industry standard api would need to be adopted to avoid a support nightmare for the number of proprietary chips and constantly changing technologies on the market. Although video is feasible (and economical), I think a clever enterpreneur with the right backing could punch out the right solution - a real h/w dsp board with a standard footprint that could support various mfg's dsp's on the same board. I say this because my h/w synth (a Kurzweil 2600 http://www.kurzweilmusicsystems.com/products.html?Id=351) with > 10 year old technology easily handles concurrent 16 midi channels, 8 analog and digital channels, layered, etc. etc. etc. without working up a sweat (I know, it chews up and spits out the Rachmaninov Concerto #2 arrangement I have. 😍) Imagine what modern technology could achieve?!?!
I don't see the GPU idea catching on very fast in any industry, although a good idea. The S/M guys would probably have to take on a healthy reworking of the code to implement that and they're struggling to get the magic number V1.0 out atm 🙂 .
Anyway, good to see another ambitious bloke on the forum 😀 .
Aloha,
Doug
Curator_Ami ·
Hi doug,
I think an industry standard api would need to be adopted to avoid a support nightmare for the number of proprietary chips and constantly changing technologies on the market.
Yes, I agree, we need something like DirectDSP or OpenDSP. Actually, I'm sure such things are well on their way, as 'OpenGL' has already spawned 'OpenML' (M for Media), and 3D surround sound effects for games have long been availabe through 3rd party APIs like EAX - I think some of these can do sound ray tracing.
I don't see the GPU idea catching on very fast in any industry, although a good idea.
The idea of using the gpu simply comes from the fact that FFT based synthesis (convolution reverbs etc), and, indeed just about all signal processing including electronic circuit simulation) is dependant upon martix math, especially multiplication, which is precisley what the GPU hardware is designed to do, as 3D requires coordinate vectors to be multiplied by transform matrices to be moved, scaled and rotated
ie, the hardware is already there, it just needs someone to write a bit of code to make audio data appear as either pixel data or vertex data, run it through pixel or vertex 'shader' code and then convert data types back again. Its a relatively simple task for a well practiced programmer, I don't have my head in that sort of spcae right now, or I'd be making my own version of synth maker using OpenML...
I'm far more interested in what I can do with the resulting processing power 😈 .
The S/M guys would probably have to take on a healthy reworking of the code to implement that and they're struggling to get the magic number V1.0 out atm Smile .
Good point about the version number, 😉 tho this is probably an excellent time to drop ideas into their heads on the back burners for when they've finished their v1.0 todo list.
Imagine what modern technology could achieve?!?!
Yes, I have, and that is why I am so eager to see it used to it's fullest capacity! 🙂
Anyway, good to see another ambitious bloke on the forum
I'm glad I'm not alone. My ideas eat CPU cylces for breakfast, and I am often mistaken for a mad scientist. 😀
doug4350 ·
Hi Curator_Ami,
You're obviously more up to speed than I am in that arena 🙂 . I'm a developer during the day that works for a company that evolved into developing document imaging s/w. We don't deal directly at the low level video i/f level on the client side though.
Actually, your reply has spawned a few resources to me for something I'm doing on the side. I'm doing some circuit-sim exploring atm for audio. I "think" it's a different approach, but maybe not. I didn't find any current work being done along those lines by web surfing.
I'm not trying to be a S/M competitor or anything, (those guys have 10+ years head start on me in dsp). But there is this curiosity thing tickling my feet I just gotta check out 🙂 .
Actually, just a few weeks ago, I found out the VST sdk has a VST-GUI companion 😮 .
I think I need to come up for air more often 😀 .
Aloha,
Doug
cAPSLOCK ·
There was a project called BionicFX.
The project died for some reason AFAIK.
http://www.google.com/search?q=BionicFX
cAPS
Curator_Ami ·
Thanks cAPS,
That's exactly the sort of thing I'm after.
I think I've found out why it petered out:
This is a more recent news article on the ATI website.
Basically, what I have suggested here, something I figured out a couple of years ago whilst pondering some other problem, is exactly what ATI has been planning all along. They've used the gaming market as leverage to develop a stream processor to complement the traditional logic processor provided by AMD, in a kind of Yin-Yang sort of relationship.🙂
Bottom line is that any programs that doesn't convert to using GPU power in the next year or so is going to look stone age.
SM doesn't have any choice if it wants to be viable on the market, at least by v2.0. It shouldn't be too hard - ATI will want to make stream processing easily accessable. 🙂
TheAudiophileDutchman ·
Talking about SM v2.0, I would prefer a hardware accellerated OpenGL based graphics-engine first (avoiding a lot of CPU overhead)... but that's just my opinion 😉
Basically somebody is having a go at getting a graphics GPU to do a VST delay plugin. Early days as yet, but looks promising.
Check it out:
http://www.kvraudio.com/forum/viewtopic.php?p=2142727
🙂
doug4350 ·
Cool! Ground has been broken. One of my pet peeves, being old school, is efficiency. As much work as been done over the years (albeit at the expense of the limitations confronted with), imho, cpu dependent daws aren't cutting it in the pro audio arena. No offense and to not be flamed, but it's reality. How can it be that to have an effective workstation, you have to have minimal services/processes running, no anti-virus, yada yada.. whereas I can play my fav games @ 1600x1200 32 bit color (edit: AND AUDIO), which *requires* an internet connection for copy protection authentication and I can pilot an air boat or dune buggy in real time w/out having a snap moment for taking a sip of beer/coffee or a fart 🙂 .
I thought the gpu idea was pretty cool a few year ago when I first read about it, but I'll definately keep a blind eye open to what's happening from the previous posts.
Aloha,
Doug
blakflag ·
Yeah this is an exciting area! Both of the big graphics players are touting their upcoming products as "GPGPUs" (general purpose blah blah) or whatever their buzzword du jour is.
Maybe there will someday be a standard that compilers can target, like SSE or MMX was. Or maybe you could even request a list of processing units supporting a data format and choose the one that suits your needs best. I'd hate for everyone to have to release separate Red and Green versions of their software.
infuzion ·
NVIDIA confirms Next-Gen close to 1TeraFlop in 4Q07
http://www.beyond3d.com/content/news/230
1st commercial audio company that can tap into that wins the prize
yes,
The thing started to be closer to practice when the nvidia 8800 came out.
I'm glad the GPU technology is getting this awesome! Can't wait to see a High Quality Synthesizer with semi-analouge oscillator using this technology!
infuzion ·
infuzion wrote: NVIDIA's GPU programming toolkit
http://developer.nvidia.com/object/cuda.html
1st commercial audio company that can tap into that wins the prize
Seems PhysX will be ported to CUDA. 😉
Wrote something here? To have a post removed or your name hidden, write to [email protected].