Buffer underruns & maximizing FL Studio performance

If your CPU or disk usage climbs too high you will hear clicks or pops in the audio (buffer underruns). The good news is, CPU and disk usage can usually be lowered considerably if you take the time to make some adjustments to the FL Studio Audio settings. Why does this happen? The Audio Buffer stores the audio data before it's sent to your audio interface. This allows FL Studio to even out momentary spikes in CPU load when processing may be slower than 'real-time'. If the Audio Buffer runs dry, because your CPU or hard-drive can't keep up with the real-time audio stream, then your Soundcard will make rude pop, click or stutter noises. It is worth noting that underruns can ONLY occur in real-time playback, they will not happen while exporting to wave or mp3 file. If you do hear that sort of thing in an exported audio file, then it is likely a plugin behaving badly, check the plugin settings in that case.

Further information is available in the FL Studio Optimization YouTube playlist.

Underrun Optimization

Underruns are recorded when the audio buffer runs out of data. Minimizing these will require some trial-and-error. Your goal is to get the Buffer length to around 10 ms (441 samples), with few or no new underruns added to the count. Failing that, up to 20-50 ms (882 - 2205 samples) usually acceptable if you are not playing a MIDI controller. Note that you will almost always see some underruns, 20 is typical), these happen at startup. Similarly, the occasional underrun is not really a problem, but may indicate you are close to the minimum buffer size your PC can sustain with the current settings. Remember, underruns are only a problem if you notice them and they are distracting you.

Minimizing Underruns

Open the Audio settings panel and choose Device: FL Studio ASIO, ASIO4ALLv2 or better, the native ASIO driver for your audio interface (if it has one). THEN try the following steps, after each change, if the underrun count stops increasing, try to reduce the Buffer length setting further. We don't recommend setting the buffer lower than 10 ms (441 samples), CPU load increases sharply with very low buffer settings. NOTE: There is a troubleshooting section for ASIO4ALL if you can't hear any sound using it.

  1. Is it an underrun? If you hear pops or crackling sounds and your underrun count isn't increasing it may be a plugin behaving badly. NOTE: In some cases underruns are not counted, particularly if you are using the Mix in buffer switch.
  2. Click the Show ASIO panel button and adjust the Buffer length. Remember that as the Buffer length is increased, underruns decrease, but the delay between playing a MIDI keyboard, tweaking a knob and the response of FL Studio also increases. The aim is to minimize the buffer size without causing buffer underruns. For ASIO drivers, settings of 1-4 ms (44-176 samples) are 'impressive' but unnecessary, 5-10 ms (220-440 samples) are 'excellent' and 11-20 ms (485-882 samples) are 'very good'. We recommend a 10 ms (441 samples) minimum setting.
  3. Still have problems? - Work carefully through the CPU and Memory Optimization section.

NOTE: If your Buffer length setting is greater than 100 ms (4410 samples) and your CPU usage meter peaks over 80%, it it's probably your computer is not fast enough to play the project. Welcome to the never ending cycle of PC upgrades!

Reality Check

Having the lowest Buffer length setting is not a competition. If you are happy with 20 or 30 ms then that's great. Remember, the lower the buffer length setting, the higher the CPU load. We strongly recommend 10 ms (ASIO mode) as a minimum setting. At lower settings than 10 ms, most people don't experience improved 'responsiveness' and the CPU load climbs rapidly. To put 10 ms in context, the delay between pressing a key on a real piano and the hammer hitting the strings is in the order of 80 ms and the time taken for that sound to reach your ears is a further 3 ms, something to ponder.