AI Copilot suggestion
-
[25.07.1-RELEASE][admin@pfSense.home.arpa]/root: sysctl -a | grep intr
kern.core_dump_can_intr: 1
vm.stats.vm.v_intrans: 120016
vm.stats.sys.v_intr: 59029319
net.inet.ip.intr_queue_maxlen: 1000
net.inet.ip.intr_queue_drops: 0
net.inet.ip.intr_direct_queue_maxlen: 256
net.inet.ip.intr_direct_queue_drops: 0
net.inet6.ip6.intr_queue_maxlen: 256
net.inet6.ip6.intr_direct_queue_maxlen: 256
hw.intrs: irq0: attimer0:3 @cpu0(domain0): 0
hw.intrbalance: 0
hw.intr_hwpmc_waiting_report_threshold: 1
hw.intr_epoch_batch: 1000
hw.intr_storm_threshold: 0
machdep.intr_apic_id_limit: -1
machdep.hyperthreading_intr_allowed: 0
dev.nvme.0.ioq.3.num_intr_handler_calls: 540754
dev.nvme.0.ioq.2.num_intr_handler_calls: 537802
dev.nvme.0.ioq.1.num_intr_handler_calls: 539084
dev.nvme.0.ioq.0.num_intr_handler_calls: 572738
dev.nvme.0.adminq.num_intr_handler_calls: 17
dev.nvme.0.num_intr_handler_calls: 2190395
dev.netmap.no_pendintr: 1
[25.07.1-RELEASE][admin@pfSense.home.arpa]/root: vmstat -i
interrupt total rate
irq4: uart0 1492 0
cpu0:timer 115657849 1009
cpu1:timer 20030697 175
cpu2:timer 19964505 174
cpu3:timer 28091847 245
irq131: igc0:rxq0 23918348 209
irq132: igc0:rxq1 9279796 81
irq133: igc0:rxq2 2557624 22
irq134: igc0:rxq3 2846502 25
irq135: igc0:aq 2 0
irq136: igc1:rxq0 5846139 51
irq137: igc1:rxq1 612593 5
irq138: igc1:rxq2 1033951 9
irq139: igc1:rxq3 1209802 11
irq140: igc1:aq 11 0
irq141: igc2:rxq0 796950 7
irq142: igc2:rxq1 798485 7
irq143: igc2:rxq2 487957 4
irq144: igc2:rxq3 7095946 62
irq145: igc2:aq 73 0
irq146: igc3:rxq0 114233 1
irq147: igc3:rxq1 87117 1
irq148: igc3:rxq2 96062 1
irq149: igc3:rxq3 135585 1
irq150: igc3:aq 82 0
irq151: nvme0:admin 17 0
irq152: nvme0:io0 575514 5
irq153: nvme0:io1 541521 5
irq154: nvme0:io2 540367 5
irq155: nvme0:io3 543390 5
Total 242864457 2120
[25.07.1-RELEASE][admin@pfSense.home.arpa]/root:================================
pfSense Interrupt Affinity Plan
Optimised for low-latency WAN/VPN
================================
--- General ---
Enable interrupt balancing temporarily for testing
(Set to 0 after manual pinning for deterministic latency)
hw.intrbalance=0
--- WAN (igc0) ---
Primary RX queue (rxq0) pinned to CPU1 for latency-critical traffic
dev.igc.0.queue0.cpu=1
Secondary queues spread to CPU2 and CPU3
dev.igc.0.queue1.cpu=2
dev.igc.0.queue2.cpu=3
dev.igc.0.queue3.cpu=2--- LAN (igc1) ---
Main LAN queue on CPU3, others spread to avoid CPU0
dev.igc.1.queue0.cpu=3
dev.igc.1.queue1.cpu=2
dev.igc.1.queue2.cpu=3
dev.igc.1.queue3.cpu=2--- VLAN trunk / other (igc2) ---
Spread evenly between CPU2 and CPU3
dev.igc.2.queue0.cpu=2
dev.igc.2.queue1.cpu=3
dev.igc.2.queue2.cpu=2
dev.igc.2.queue3.cpu=3--- Low-traffic interface (igc3) ---
No latency sensitivity; spread to avoid CPU0
dev.igc.3.queue0.cpu=2
dev.igc.3.queue1.cpu=3
dev.igc.3.queue2.cpu=2
dev.igc.3.queue3.cpu=3--- NVMe Storage (optional) ---
Spread I/O queues to avoid clashing with WAN CPU
dev.nvme.0.ioq0.cpu=2
dev.nvme.0.ioq1.cpu=3
dev.nvme.0.ioq2.cpu=2
dev.nvme.0.ioq3.cpu=3================================
Notes:
- CPU0 is reserved for system/timer work; no NIC queues assigned.
- CPU1 handles WAN primary queue exclusively for low latency.
- CPU2 and CPU3 share secondary queues and bulk traffic.
- Apply via System > Advanced > System Tunables for persistence.
- Verify with 'vmstat -i' and 'top -P' after applying.
================================
If somebody can confirm, is it will make any improvements, or all of this will make even worse and unstable pfsense