Raspberry Pi is not the fastest computer, but recent models are powerful enough to be used in many situations. I don’t spend much time trying to optimize mine, but I will share a few great tips I know with you in this article. We’ll see just how easy it is to optimize the Raspberry Pi’s performance.
The hardware, operating system, and installed applications are the most common reasons for a slow Raspberry Pi. The easiest ways to optimize your Raspberry Pi are by using better components, overclocking, installing a 64-bit OS, or removing useless apps and services.
In this article, I will start by giving you the tips you are looking for and explain why they will make a difference. Then we’ll check the performance improvement we can get by applying them.
If you’re looking to quickly progress on Raspberry Pi, you can check out my e-book here. It’s a 30-day challenge where you learn one new thing every day until you become a Raspberry Pi expert. The first third of the book teaches you the basics, but the following chapters include projects you can try on your own.
8 Tips to Make a Slow Raspberry Pi Run Faster
These are simple tips you can apply to get the most out of your Raspberry Pi, whatever the model you use. Try to apply a few of them (or all at once) to which results you can get.
Get rid of unused apps and services
If you are anything like me, you may like installing and testing new apps on your Raspberry Pi. In the long run, this can drastically decrease the Raspberry Pi’s performance, as it has to run not only the apps you are using but also apps still in the background.
For example, if you try to install Webmin one day, Pi-Hole another day, and a few other services like that, they will continue to run on your system even if you don’t use them anymore. After a few weeks or months, your Raspberry Pi may spend much of its resources on services you don’t use.
The first thing to do to make your Raspberry Pi run faster is to list the installed applications and services and remove the ones you don’t need anymore. You can do this with a package manager like Synaptic, or the command line:
sudo dpkg -l
If you don’t know how to uninstall apps on Raspberry Pi, click on this link to read my detailed tutorial about this.
Tip: Using a lightweight operating system like DietPi allows you to select the apps you want during the installation. It won’t install anything you don’t choose. That’s the best way to start with a fast OS. DietPi is really close to Raspberry Pi OS, so you shouldn’t be lost. Learn more about it here.
Check the process list to identify the greedy ones
All apps and services are not created equal. The next step is to look for apps that require the most memory or CPU resources. You can do this easily by displaying the process list when you find that your Raspberry Pi is slow.
If you have a desktop environment, you should have an app to find this quickly. For example, on Raspberry Pi OS, you can open the main menu and find the Task Manager under Accessories:
You’ll quickly see if your CPU and memory are overused, and which apps or services are using the most of them.
In a terminal, my favorite tool is “htop”, which is an improved version of “top”. It looks like this:
You can see the command and the resources used (CPU% and MEM%). It should help to find which processes are slowing down your Raspberry Pi and optimize them or get rid of them if you don’t need them anymore.
Are you a bit lost in the Linux command line? Check this article first for the most important commands to remember and a free downloadable cheat sheet so you can have the commands at your fingertips.
Use a better SD card
This is probably the most common reason for a slow Raspberry Pi (if it’s a recent model). Many users are using the SD card included in their Raspberry Pi kit, but it’s rarely the best one. Manufacturers include an SD card as a gift, and they often provide the cheapest option they can find.
There could be a huge difference in performance between a low-end SD card and the faster one. As the best micro-SD cards are not overly expensive, it might be a good idea to look for something better to use on your Raspberry Pi.
I have a complete benchmark of the most popular SD cards here, so I won’t go into detail in this article. Read the other article, select the best one for you and see if you can get better results.
Upgrade your installation to use an SSD disk
On recent Raspberry Pi models and operating systems, it’s possible to replace the SD card with an SSD disk. The performance boost you can get by using this is spectacular. I’ll show you the difference in the second part of this article, but you should probably consider it.
SSD disks are no longer an expensive purchase. The favorite that I have been recommending for years is this one from SanDisk (check the price on Amazon), but even with cheaper options (like this one from Kingston) you will drastically improve the boot speed and responsiveness of your system.
Using an SSD has other advantages. I consider them safer than SD cards, as they will last longer and have fewer chances to be lost or broken accidentally. Also, if you don’t have an SD card reader on your computer, it’s easy to plug it into a USB port and quickly transfer files in one way or another.
If you don’t know how to switch from your SD card to an SSD disk, I have an entire module in my course “Raspberry Pi Bootcamp” explaining how to do this step by step. It’s not complicated, once you know the fastest method to do it, you can get access to it there.
Try to use a 64-bit operating system
This tip will become more and more important. We are still at the beginning, but several operating systems are now available with a 64-bit version. Recent Raspberry Pi models can run 64-bit OS and apps, but the OS developers haven’t kept pace with the hardware evolution.
A 64-bit operating system is intended to better use the power of a 64-bit CPU, and improve the overall performance for several reasons. You can expect an overall boost of about 25% in performance with a 64-bit operating system on a compatible device. And some apps will benefit even more from it.Me
Raspberry Pi OS has now a stable 64-bit version (even if it’s not yet suggested by default), so you might want to try it and see if you can get better results. I explain the differences and how to install it in this tutorial.
Other operating systems like Manjaro, Gentoo or Ubuntu also offer a stable 64-bit version.
Whatever your system choice, you should be able to get a slight improvement in performance with a 64-bit OS if the applications are also optimized.
Experiment with overclocking
Overclocking a Raspberry Pi has been a sport forever. I didn’t list it first because the results you can expect are less and less interesting with new models. But it can still bring an interesting boost if you are doing this right.
Overclocking is easy to try, but can also cause damage to your installation or even worse, your hardware.
Make sure you know what you are doing before trying anything.
On your SD card, there is a configuration file where you can specify values to boost your Raspberry Pi performance. This file is /boot/config.txt, and the most common changes are done by playing with:
- over_voltage: scale voltage up for overclocking.
- arm_freq: CPU frequency in MHz.
- gpu_freq: change different settings related to the Raspberry Pi CPU performances.
I will give you the values later in this article but it is something to have in mind if you are looking to improve the Raspberry Pi’s performance. Default values are set for the best compromise between performance and safety/temperature, but you can adjust them if you want.
Don’t forget to cool it down
The CPU temperature for a Raspberry Pi should stay under 70 °C. Depending on your Raspberry Pi model and the apps you use, you might quickly reach this threshold. In this case, it’s a good practice to use on the cooling solution. It could be heat sinks, a fan, a passive case or anything else.
Some models like the Raspberry Pi 3B+ have security in place. Over 60 °C the CPU clock speed will start to slow down, and so the performances will decrease. If you want to get the most out of it, you need a good cooling solution.
I have tested many of them on this website. It depends on your preference and use, so I’ll let you determine the solution that seems the most interesting for you:
- Simply add heat sinks for basic use.
- Use a passive case like the Flirc Case or the Argon Neo.
- Test a giant fan with the ICE Tower which will keep your Pi cool in any situation.
Get a proper power supply
This is a bonus tip, which may have some importance if your Raspberry Pi doesn’t get enough power to run everything. When looking for performance, and especially if you try overclocking it, you need a good power supply.
You can’t plug your Raspberry Pi into the USB port of your computer and expect maximum performance.
I have an entire article on how to power a Raspberry Pi, so I won’t give many details about it here. In short, make sure to use a compatible power supply for your Raspberry Pi model (each model has specific requirements).
Experiment: The results you can get with these tips
In this second part of the article, I will show you what you can expect by applying all these tips. I have tested them on my Raspberry Pi 4 (4 GB) and will share my results with you.
Initial performances with a standard installation
Let’s start with the initial performance I get with my basic installation. I’m using Raspberry Pi OS (Full) installed on a SanDisk Extreme Pro SD card (which is one of the best currently, so I won’t test the tip about the SD card).
I have done all the updates and have almost nothing installed (so no apps/services running).
I did a few experiments, and here are the results I got:
- Boot time: about 28 seconds
- Sysbench: 9.20ms per request on average
- Speedometer (web browser performances): 10
- CPU temperature: around 52 °C during the tests
Results after overclocking
Then, I only changed the settings in my /boot/config.txt file to overclock the CPU. Here are the values I tested:
Disclaimer: The following recommendations are what I tested on my Raspberry Pi 4 with 4 GB RAM. These values have to be adapted depending on the model and cooling system you use. I cannot be held responsible for any damage to your system or hardware.
And the results I got by only changing this:
- Boot time: no change
- Sysbench: 6.53ms per request on average
- Speedometer: 13.36
- CPU temperature: around 65 °C during the tests
It seems like a nice 30% boost in performance for the tasks using the CPU. Not bad for a single change, let’s see what we can get by pushing this further.
The best results you can get for a similar installation
If you add an SSD to this setup and maybe switch to a faster OS like Manjaro, you can also expect another boost in performance.
Switching to an SSD disk will speed up the boot time and the overall responsiveness of your operating system. Each access to the disk will be way faster.
Manjaro got me a 30% boost without SSD or overclocking, so combining everything will almost double the performance.
You don’t need to change everything, but you can apply a few of the tips I gave in this article. As you can see, it’s already a great improvement. It’s not complicated, and you can get the most out of your Raspberry Pi after a few changes.
Want to chat with other Raspberry Pi enthusiasts? Join the community, share your current projects and ask for help directly in the forums.
How to check the current clock speed?
There are two important values to check for the current clock speed on Raspberry Pi.
The maximum can be obtained with the command:
vcgencmd get_config arm_freq
While the current clock speed can be found in this file (divide the value by 1000):
How to know the CPU temperature of Raspberry Pi?
There are two ways to know the CPU temperature of Raspberry Pi. A widget named “CPU Temperature” can be added to the top panel to display its value all the time on a desktop environment. The alternative is to use the following command:
How to properly cool a Raspberry Pi?
The best cooling system for your Raspberry Pi depends on your model and CPU usage. In most cases, Raspberry Pi doesn’t need a cooling system, but solutions like heat sinks, passive cases, or fans can help to keep them cool in an intense environment.
Related article you should check: Raspberry Pi Temperature: Limits, monitoring, cooling and more
How to know if your Raspberry Pi is throttling?
A Raspberry Pi can employ throttling for heat issues or insufficient power. To know if a Raspberry Pi is throttling, the command “vcgencmd get_throttled” can help to identify the issue. Any non-zero result tells that there is an issue (under voltage or overheating).
Whenever you’re ready, here are other ways I can help you:
The RaspberryTips Community: If you want to hang out with me and other Raspberry Pi fans, you can join the community. I share exclusive tutorials and behind-the-scenes content there. Premium members can also visit the website without ads.
Master your Raspberry Pi in 30 days: If you are looking for the best tips to become an expert on Raspberry Pi, this book is for you. Learn useful Linux skills and practice multiple projects with step-by-step guides.
The Raspberry Pi Bootcamp: Understand everything about the Raspberry Pi, stop searching for help all the time, and finally enjoy completing your projects.
Master Python on Raspberry Pi: Create, understand, and improve any Python script for your Raspberry Pi. Learn the essentials step-by-step without losing time understanding useless concepts.
You can also find all my recommendations for tools and hardware on this page.