I’ll try not to be too technical about this - so apologies to the tech-savy crew for not being 100% precise at all times for the sake of simplicity…
“Popping” sounds are usually an indicator for the audio stream being interrupted. This happens when data doesn’t arrive at your audio interface in time to fill a new buffer when the current one has already been played. Essentially, this is the sound of scraping the bottom of an empty barrel
There are a couple of main reasons for the buffer running empty:
the audio buffer for your interface is too small, so your system is constantly busy filling the buffer instead of calculating the sound. A larger buffer means essentially that your system has more time to actually perform calculations (i.e. creating sound) instead of running back and forth sending new buckets of sound to the audio interface. So a larger buffer will take strain off your system and allow you to process more plugins and play more CPU-hungry synths. But there is a cost: a larger buffer means more LATENCY: essentially this is the time it takes between creating the sound (hitting a key) and hearing the sound. So optimizing buffer sizes is always a compromise between performance (avoiding pops and clicks) and latency. Usually a reasonable starting buffer size for ASIO drivers is 128 samples.
even with a reasonable buffer, your processor may not be able to keep up with the effort of calculating sound in time to fill the next buffer. Have a look at Cantabile’s load meter - it will tell you (to some extent) if your processor is maxed out. There are two solutions to the processor power issue: (1) get a faster one and / or (2) get more cores to work on the processing in parallel. For “normal” plugin and VST instrument usage, a current quad-core Intel i7 processor is more than adequate - most setups can actually be run on a current dual-core i5, unless you really are using tons of CPU hogs like DIVA…
If the processor is not maxed out and you are using a number of sample-based instruments, it could be an issue of samples needing to be continually loaded and unloaded or streamed from disk and the disk drive not keeping up with the task. First category: if your samples are all loaded into RAM but your don’t have enough RAM, Windows will continually try to swap the ones you are not using out of current RAM to your disk drive and get them back when they are needed. Needless to say, this is a sloooooow process - will disrupt your output. Check for that in Cantabile’s memory usage indicator - it will show you how much RAM your current setup is consuming. There are also samplers like Kontakt that don’t load all their samples into RAM - they stream part of them from disk when needed. Again, if your disk is too slow, this will create breaks in the audio stream. You can fix this either by loading more of the samples into RAM or by getting a faster drive for your samples (M.2 SSD is currently the fastest option).
Lastly. there are vast differences in the efficiency and quality of audio interfaces and their drivers (normally you’re best off using ASIO drivers if your interface has them!). Some you can run quite safely with a buffer of 64 samples without getting pops and clicks, with others you’ll have to use a 256 sample buffer to be safe - on the same machine!
So in summary, I would recommend a current Intel i7 quad-core processor (if you can afford it, otherwise a decent i5 dual-core can already do a lot), at least 16 GB of RAM (more if you use mainly sample-based instruments) and a good low-latency audio interface (RME, Zoom, Focusrite Scarlett); this should give you a good setup to play reasonable setups in Cantabile.