graphics card

Essentially every gaming graphics card you can buy right now is a scam. They are massively overpriced and/or not available due to the “chip shortage”. If you know someone who had build a new PC in the last two or three years, ask him if he still got his old card. Whatever that may be, it will be enough for VCV.

And don’t try to buy used from ebay, that’s the same story. Just have a look for a Geforce GTX 970 for example, they were released in 2014 for a MSRP of 329$ - that is 8 years ago and 4 generations old.

2 Likes

Yes. Especially given that you’re now running graphics at 10hz. How it works is that when the weak GPU cannot handle the graphics duties properly the CPU takes over from it for the graphics, which means that now that CPU power cannot be used for your patch and the max. size of patches you can run will be smaller. So yes, definately a decent dedicated/discrete GPU for Rack, like it says in the manual. Doesn’t have to be superduper, expensive and fancy, just decent. The M1 Apple computers are the exception here.

There are also non-graphics factors to consider for a “Graphics card”…

The CPU (Central Processing Unit) can potentially offload/delegate work to the GPU (Graphic Processing Unit). Especially for paralell processing. Especially usefull for real-time applications like realtime audio synthesis (DSP, Digital Signal Processing).

Basically the GPU is good at SIMD operations. Single Instruction Multiple Data (“parallel processing”)

The “application” developer can use these “SIMD” “instructions” in the sourcecode. To execute multiple parallel “tasks” or “data operations” in “one step”.

Obviously, for all this to work, the CPU/GPU must support this…and that’s a hardware thing…

For CPU: think of the MMX/AVX “SIMD” instruction set extensions for CPU’s

For GPU: think of OpenCL

Anyway…

I’m probably cutting many corners with the descriptions above. But the general considerations are valid…

1 Like

Here’s a related question that I’ve had a hard time answering myself:

I have a Ryzen 5700G. It comes with a fairly powerful integrated GPU, able to handle most things I throw at it at 1080p with no problems. However, as I understand it, VCVRack does not seem to utilize integrated GPUs particularly well.

I also have an old GTX 760 2GB card lying around. Would VCVRack perform better or worse if were to install the graphics card? If so, would it come at a cost to how the system performs in other areas?

Sure, a few specialized applications can, but Rack can’t, at least not yet and I don’t see that coming anytime soon.

Well, Rack needs a certain minimum amount of “GPU power” for its graphics rendering and builtin graphics are notoriously weak (except Apple M1 machines). Whether the old GTX 760 2GB card is better I couldn’t say.

If it works better for Rack it’ll work better for everything else, I can’t see why not.

On Performance and the issue of the “external” GPU not being used.

Copied from another thread/question

1 Like

It doesn’t even run all too bad on my 12 y/o Thinkpad x201.

I agree that iGPUs are notoriously weak normally, but these Ryzen “G” series processors are a bit of an exception. The iGPU is about as powerful as a GT 1030, which should really be more than enough to run VCVRack, but it just seems like it ignores the existance of the iGPU.

It could be that it there are some settings that are stopping it from using it. I will look into this.

I’m not following you. I think you said you have integrated graphics and then an old card “lying around”, i.e. outside the compter. So if there’s only one GPU in your computer, the integrated one, the computer can’t really ignore it. Do you have two GPU’s in the machine?

Audio processing in the gpu has a very high latency. It would never work for VCV which processes one sample at a time.

1 Like

Sorry, poor phrasing.

It seems to behave as if the GPU is way weaker than it actually is. I would think that an iGPU that can run a fair amount of modern game at reasonable framerates on 1080p should be powerful enough to run VCVRack at reasonable framerates, too.

If you personally, on your machine, is running demanding games on it then yes, it should work well with Rack as well.

I am never sure what happens when your system has two GPUs, one terrible and one good. Is it possible VCV is using the bad one? I know there is some way to figure out which is being uses. Maybe this line in the log file?

[1.953 info src/window/Window.cpp:336 Window] OpenGL: 4.6.0 NVIDIA 457.51

1 Like

So a GeForce GT 710 would be a possible candidate, as per Ahornberg’s suggestion. Any other suggestions? I’ve been looking up the 710’s second hand, there’s a few on offer, but they all seem to have different specs. And different prices.

I use a radeon rx 570 4GB (linux) driving a HD & a 4K, works fine for VCV.

Your current CPU integrated Intel UHD 630 is substantially more powerful than the GT 710. Unless there is a specific compatibility issue with the integrated one, the GT 710 will be a downgrade, all in all.

Other than that, when ever getting a graphics adapter for an audio system, make sure the drivers play nice with the rest of the system, not causing DPC latency problems on Windows, and so on. Preferrably search for a solution that you can verify working nicely in a low-latency context already, in someone else’s (or some audio computer provider’s) build, and go with the exact same one.

1 Like

At least in the Linux world, multi-GPU affair is still an adventure. X11 is very tricky to setup with multi-GPU mapped to a single desktop. If you’re into the muti-GPU multi-display scene, your best bet these days is to use Wayland that can natively do it. From Rack’s perspective, it’s pretty simple. Rack is an OpenGL application. It will render on whatever OpenGL chooses as it’s default display. There’s no compute, offloading or OpenCL involved here, just simple rendering. The absolute majority of Linux systems will only use one GPU (the primary or boot GPU) for their X11 display. Any additional GPUs can be used as a compute or rendering engine using whatever APIs the GPU driver is offering (such as NVidia CUDA or OpenCL) but it’s up to the application to use those. I have a dual GPU setup in my rig. RTX3060Ti is my primary GPU and is mapped to X11 as a single display driver. The other GPU is a RTX3080Ti - a very powerful GPU. I use it mainly as a passthrough GPU into a VM running Windows 11 (mostly for gaming). When I’m not running it in the VM, I can bind it back to the Linux host NVidia driver and use it for very fast NVENC assisted streaming/recording using OBS, rendering high-resolution videos in KdenLive, or experimenting with ffmpeg.

2 Likes

So, it seems, in this case, I might have unwittingly led someone astray about GPU in this context.

I’m definitely no expert in the realtime / DSP software/programming field. Nor in the DSP hardware field. Also, my “hardcore” programming days are in a distant past.

Nowadays I work on designing, implementing, supporting and adapting complex administrative systems/components for large companies and government and such. A whole other ballgame. Everything works at a way slower pace there…

Anyway…

I know of DSP projects that do use GPU for parallel processing. E.g. a little known beast called Tranzistow (for its 8 OP Additive+FM engine) http://www.hrastprogrammer.com/hrastwerk/tranzistow.htm http://www.hrastprogrammer.com/hrastwerk/diodow.htm

Also Everett from Seaweed Audio has been working on integrating AVX and GPU processing into his FathomSynth project. He did integrate AVX/AVX2, but I have not checked recently to see if he succeeded to overcome the obstacles for GPU (e.g. latency).

That not what I meant. OP has two gpu. Presumably vcv is only using one of them. Which one?

I’m just saying it can’t be done with low latency. Yes, I know people do audio on GPU. Have been for decades. VCV not possible. People I worked with investigated it extensively.