In Computing, what is a Buffer?

R. Kayne

A computer buffer is an area of memory used for the temporary storage of data when a program or hardware device needs an uninterrupted flow of information. Buffers are typically created in Random Access Memory (RAM) rather than on the hard disk, as fetching data from RAM is faster than retrieving it from the platter technology used in conventional hard drives. Some hardware devices come with their own on-board RAM, as in the case of printers.

Adding RAM to computers can allow for a larger buffer which improves media streaming.
Adding RAM to computers can allow for a larger buffer which improves media streaming.

Printers designed for small workloads generally have smaller buffers, while work horse models have greater amounts of RAM. When clicking a button to print a job, the computer sends the data to the printer RAM, freeing the system RAM to handle other tasks. This allows print jobs to run in the background, referred to as spooling. A printer buffer prints jobs on a first-come, first served basis, capable of maintaining a cue, especially important in a networked environment.

Small printers typically have small buffers to deal with printing so the computer can use its own RAM for other tasks.
Small printers typically have small buffers to deal with printing so the computer can use its own RAM for other tasks.

Another example of this is in streaming online multimedia content. Without use of a buffer, the user would either have to wait for the entire file to load to the local machine before playing it, or to sit through playback with breaks and jumps created by millisecond (or longer) delays in the data stream.

Here’s how it works: Files, data, music and video are all transported across the Internet in small, discreet data packets. These packets arrive independently and have to be recombined and reordered to recreate the original data stream without interruption. If a data packet is missing, video playback will “jump” to the next packet in line. To avoid this, a few seconds worth of the stream is stored in the buffer, then as playback begins, it stays just ahead of the display, “paving the way” for smooth sailing.

Some people might deduce it’s a good idea to configure this area of memory to be very large to ensure smooth playback. The problem is, the bigger the buffer, the less system RAM is available for other tasks. In the case of graphics cards that share memory with system RAM, creating temporary storage that is too large can actually degrade playback, as the graphics card might run short on the memory required to display streaming content. This can cause playback to appear as though it’s being viewed through heat waves, become jumpy, break up, or intermittently hang.

Since the optimum buffer size is determined mostly by connection speed and system RAM, playback problems can often be improved or fully corrected by adjusting this area of memory to be either slightly smaller or slightly larger. The correction that will serve best also depends on the reliability and speed of the source of the streaming content. A smaller buffer can work quite well with a fast source, offering quicker playback and additional RAM for graphics rendering. A slower source might require a slightly larger one, all else being equal. Users might need to experiment to find the right size.

Adding RAM to a system that shares memory with the graphics card (referred to as integrated graphics) can also improve streaming media by allowing a larger buffer without compromising playback quality. Adding system RAM can also help if the graphics card has only a nominal amount of on-board RAM.

Users can usually change the buffer size for multimedia content through the software used for listening or watching streaming materials. Typically, a slider control allows the user to increase or decrease the amount of memory set aside.

Word processors, spreadsheet programs and nearly all productivity packages use buffers to keep track of changes within a document or project so that reversion (the "undo" command) is possible. This memory is also responsible for saving temporary copies of material in progress so that, in the case of a crash or power outage, the document can be retrieved even when it was not officially saved.

Buffering can disrupt viewing videos online.
Buffering can disrupt viewing videos online.

You might also Like

Readers Also Love

Discussion Comments


@KoiwiGal - Yeah, especially since so many places are getting super fast internet now. The faster the internet the less of a buffer you need, at least for streaming files.

Most standard desktop packages will provide more than enough RAM, but I would make sure you aren't getting ripped off when it comes to laptops, particularly the smaller ones. If you're only going to use them for word processors it's not a big deal, but if you want decent graphics and things for games, then you need to make sure the specs are up to modern standards.

It's easy to check what good levels of RAM and so forth are by looking around online for computer forums and price comparison sites and there are lots of articles describing exactly what you should look for in any new gadget.


@umbra21 - Well, RAM an be expensive though, so don't depend on getting more once you've got your computer. Sometimes it's cheaper to just get a better computer, rather than worrying about upgrading them.

This is particularly true since most computer geeks won't shy from customizing their computers and so the places that sell components don't really have to discount them that much. But a package will often be discounted to tempt someone into getting it.

And, as it says in the article, it depends on what you want it for. Unless you are really into creating art, or gaming you don't need all the RAM in the world to prepare a decent buffer.


I've always thought it's important to try and get the most RAM you can, especially on a laptop or something that can't really be modified after you buy it.

With desktop computers, you can generally buy RAM and install it with no problems, even if you aren't a computer technician. When all you're doing is installing parts, computers are actually pretty easy to figure out. You don't even need to know how all the components work, you just need to get all the components you know you need and plug them into the places where they go.

Post your comments
Forgot password?