591

By default, htop shows colored status bars for processors, memory, and swap. From left to right, the bars are colored green, blue, yellow, and red depending on some thresholds.

What does it mean when the Memory bar has a small level of green and blue, and almost all the remainder is yellow? The swap bar is empty. The color settings for htop are "default".

htop screenshot

0

4 Answers 4

687

Hitting F1 or h will show you the key. But for reference, the default colors are:

CPU:

  • Blue = Low priority threads
  • Green = Normal priority threads
  • Red = Kernel threads

Memory:

  • Green = Used memory
  • Blue = Buffers
  • Yellow/Orange = Cache

There are a couple of different color-schemes available, you can see them through hitting F2.

13
  • 26
    What does orange mean in the CPU bars? Most of my CPU bars are filled with orange, but it doesn't say what it means in the key. May 13, 2012 at 19:27
  • 2
    @EtiennePerot you are right. There are some more colors. See my answer ;).
    – jjmontes
    Nov 16, 2012 at 9:26
  • 15
    Yes, it's a good thing. See linuxatemyram.com for a good understanding. May 10, 2013 at 19:08
  • 3
    Your answer is not totally right about the red color. It's not kernel threads but time spent in kernel code by any priority user threads and time given to kernel threads which spend all their time in kernel code. Jul 2, 2014 at 14:11
  • 8
218

I couldn't find this documented elsewhere. Looking into the code:

There are two modes for CPU metrics reporting: the default one, and a "detailed CPU time" which can be enabled from the Setup screen (Display Options / Detailed CPU time). All of them show the percentage of time spent in different processes:

Default mode

  • Blue: low priority processes (nice > 0)
  • Green: normal (user) processes
  • Red: kernel time (kernel, iowait, irqs...)
  • Orange: virt time (steal time + guest time)

Detailed mode

  • Blue: low priority threads (nice > 0)
  • Green: normal (user) processes
  • Red: system processes
  • Orange: IRQ time
  • Magenta: Soft IRQ time
  • Grey: IO Wait time
  • Cyan: Steal time
  • Cyan: Guest time

Memory meters are more straightforward:

  • Green: Used memory pages
  • Blue: Buffer pages
  • Orange: Cache pages
  • Grey: Free (unused)

Note: Info obtained from htop source code at https://github.com/hishamhm/htop/blob/master/CPUMeter.c .

7
  • 45
    press F1 for help.
    – tgies
    Mar 20, 2013 at 21:53
  • 9
    @tgies - the help page contains something different to this.
    – UpTheCreek
    Dec 8, 2015 at 12:15
  • 5
    If you put the CPU bars into "detailed" mode then press F1 and this info shows properly.
    – joshperry
    Aug 10, 2016 at 18:58
  • 14
    If, like me, you see this orange CPU-bars on an Amazon EC instance (aug 2016), most likely your CPU is throttled because your so called "CPU credits" are spent.
    – berkes
    Aug 18, 2016 at 8:11
  • Wait so in your answer under 'memory meters' orange is for cache pages, in sysadmin1138's answer under the same it says yellow/orange is for cache pages. Does the code mention anything about the yellow? Mar 26, 2017 at 13:20
11

There are several different colors for each of the bars, except the Swap bar. Here are the color keys used inside of htop:

enter image description here

2
  • The memory bar also has gray, that seems to mean 'available' or 'unused'.
    – Luc
    Feb 19, 2021 at 15:01
  • How do you get htop to show that view? (edit, it's in the help, F1)
    – Mint
    Oct 9 at 20:10
2

Anyone who just upgraded to Debian 12 (Bookworm), may have noticed a new colour in the RAM, purple.

Purple represents "shared" memory.

htop F1 help

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .