Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    High CPU usage

    Scheduled Pinned Locked Moved Hardware
    5 Posts 3 Posters 2.7k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      bilbus
      last edited by

      After upgrading to 1.2.1 (from 1.2) my cpu usage has gone from 5-10% to 30-80%.

      I tried "top" and "ps ux"

      Neither seemed to add up to the number that was being shown on the gui (system)

      Are there any other commands i can use to get a better idea what is using all my cpu power?

      Thanks

      1 Reply Last reply Reply Quote 0
      • J
        jos
        last edited by

        I have noticed the same thing. I had problems with 1.2 that the network drivers used a lot of cpu but with 1.2.1 it has become much worse. If you press S in top it displays the system processes. Here you can see that the drivers plus interrupts uses over 90%.

        CPU states:  9.0% user,  0.7% nice, 31.7% system, 48.9% interrupt,  9.7% idle
        Mem: 57M Active, 51M Inact, 138M Wired, 236K Cache, 104M Buf, 683M Free
        Swap: 512M Total, 512M Free

        PID USERNAME  THR PRI NICE  SIZE    RES STATE    TIME  WCPU COMMAND
          25 root        1 -68    -    0K    8K WAIT  210:12 30.86% irq18: rl0
          29 root        1 -68    -    0K    8K WAIT  176:29 20.17% irq16: rl2

        1 Reply Last reply Reply Quote 0
        • W
          wallabybob
          last edited by

          Have you tried putting the interfaces in polling mode? (In the web GUI, System menu, Advanced, then check box "Use device polling".) This has been observed to considerably reduce the CPU overhead on some workloads. Polling increases latency a little bit (received packets aren't processed immediately but every poll, and polls happen about 1024 times a second)

          1 Reply Last reply Reply Quote 0
          • J
            jos
            last edited by

            Yes, I run in polling mode. The cpu usage is much lower and everything seems to work much better.
            Interesting still is why there is so big difference between 1.2 and 1.2.1.

            1 Reply Last reply Reply Quote 0
            • W
              wallabybob
              last edited by

              My firewall has 1 x vr NIC, 1 x rl, 1 x ath and 1 x udav, I've been running some variant of pfSense 1.2.1 for some months now and can't recall ever seeing similar interrupt percentages to what you see.

              If you are curious to explore this issue further, perhaps you could  take the interfaces out of polling mode and give the shell command vmstat -i to see interrupt rates on  rl0 and rl2. Are these interfaces in promiscuous mode (possibly bridged with another interface)? Are they connected to a hub rather than a switch? Do you have something "new" happening causing more network traffic?

              1 Reply Last reply Reply Quote 0
              • First post
                Last post
              Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.