Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Benchmark Tools for Linux

phoronix-test-suite is currently the best benchmark tool for Linux. You can use it to figure out the bottleneck of performance of your Linux machine. Please refer to Benchmark Your Linux Machine Using phoronix-test-suite for more discussions.

BCC is a toolkit for creating efficient kernel tracing and manipulation programs leveraging extended Berkeley Packet Filters (eBPF).

Upgrading Hardware

  1. Get larger RAM for your computer.

  2. Get a SSD disk.

  3. Get a good graphics card (if you have workstation).

Configuration

  1. Configure GRUB to fix PCIe BUS errors if any. Please refer to Pcie Bus Error: Severity=Corrected, Type=Physical Layer for detailed discussions . Notice that you might have to do this every time you upgrade your Linux kernel.

  2. Reduce GRUB timeout to a smaller value. Please refer to Reduce GRUB Timeout for detailed discussions .

  3. Configure vm.swapness to be a proper value (10 or even less), if your Linux system has a large swap partition. For more details, please refer to SwapFaq .

  4. Choose a fast mirror. If you are using Ubuntu, a fast mirror will be automatically decided based on your location. However, if you are using other Linux distribution (e.g., Linux Mint), you might have to choose a fast mirror manually.

  5. Use the noatime option for filesystems. Add the noatime option into your fstab for all non-swap partitions. This is NOT recommended unless you really want to squeeze the performance of Linux machine.

  6. Remove non-necessary autostart applications and configure a delay to must-have autostart applications. Please refer to Manage Autostart Applications for detailed discussions.

  7. Disable non-needed systemd services. Please refer to Manage systemd Services and Units for detailed discussions.

  8. If you use the GNOME desktop environment, configuare “Gnome Shell Search” to disable unnecessary applications. gnome-shell-search-config

Software-based Optimization

Linux Distribution and Kernels

  1. Use a light-weighted Linux distribution. For example, antiX Linux is a light-weighted debian-based Linux operating system.

  2. Use a light-weighted desktop environment, e.g., Xfce or LXQt. When used with Ubuntu, they correspond to Xubuntu and Lubuntu which are both good choices for non-powerful computers.

  3. Keep your Linux distribution up to date. Generally speaking, it is a good idea to use the latest LTS or stable versions.

  4. Remove old kernels.

     :::bash
     wajig purge linux-image-<verson>

Lightweight Alternatives

  1. Use dash instead of bash which makes boot faster.

     :::bash
     wajig install dash
     wajig reconfigure dash
  2. Use Evince instead of Okular which is resource hungry
    and has lots of KDE dependencies.

Package and Disk Cleanup

  1. Identify orphan packages and remove them.

     sudo deborphan | xargs wajig remove --purge
  2. Clean up packages.

     :::bash
     wajig autoremove && wajig autoclean
  3. Clean up disk using localepurge.

     :::bash
     wajig install localepurge
     localpurge

References