This document describes Catalyst 8000 CPU core allocation including how to configure resource templates distribution and verify its utilization.
This document applies to Catalyst 8000 platforms utilizing an x86-based software data plane (vQFP).
Note: The number of cores and their IDs vary based on the model and the core distribution configuration.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
The Catalyst 8000 Series employs resource templates to partition physical and logical (hyperthreaded) cores. This partitioning prevents resource contention between background management tasks and high-priority packet forwarding or containerized services.
Based on the deployment, you can choose from several templates:
To apply a resource template, enter global configuration mode.
Router(config)# platform resource ?
control-plane-extra-heavy Use Control Plane Extra Heavy template
control-plane-heavy Use Control Plane Heavy template
data-plane-heavy Use Data Plane Heavy template
data-plane-normal Use Data Plane Normal template
service-plane-heavy Use Service Plane Heavy template
service-plane-medium Use Service Plane Medium template
Router(config)# platform resource service-plane-heavy
Note: Changing the platform resource template requires a write-memory and a reload to take effect.
When monitoring the CPU on a Catalyst 8000, the output of show process cpu platfrom sorted can show utilization near 100% on many cores. This is often by design.
The process ucode_pkt_PPE0 represents the microcode running on the Packet Processing Engines (PPE).
Caution: Example run on 8500L, on other platforms the core distribution can look a little different.
Router#show process cpu platform sorted
CPU utilization for five seconds: 71%, one minute: 71%, five minutes: 71% Core 0: CPU utilization for five seconds: 2%, one minute: 1%, five minutes: 1% <-- Control Plane (Idle/Normal) Core 1: CPU utilization for five seconds: 1%, one minute: 1%, five minutes: 1% <-- Control Plane (Idle/Normal) Core 2: CPU utilization for five seconds: 99%, one minute: 98%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 3: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 4: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 5: CPU utilization for five seconds: 99%, one minute: 98%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 6: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 7: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 8: CPU utilization for five seconds: 100%, one minute: 99%, five minutes: 100% <-- Data Plane (Hot-Spinning) Core 9: CPU utilization for five seconds: 100%, one minute: 99%, five minutes: 100% <-- Data Plane (Hot-Spinning) Core 10: CPU utilization for five seconds: 21%, one minute: 22%, five minutes: 21% <-- Service Plane (Active Workload) Core 11: CPU utilization for five seconds: 7%, one minute: 4%, five minutes: 4% <-- Service Plane (Active Workload) Core 12: CPU utilization for five seconds: 1%, one minute: 1%, five minutes: 1% <-- Control Plane (Idle/Normal) Core 13: CPU utilization for five seconds: 2%, one minute: 1%, five minutes: 1% <-- Control Plane (Idle/Normal) Core 14: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 15: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 16: CPU utilization for five seconds: 99%, one minute: 98%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 17: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 18: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99% <-- Data Plane (Hot-Spinning) Core 19: CPU utilization for five seconds: 99%, one minute: 99%, five minutes: 99% <-- Data Plane (Hot-Spinning) Pid PPid 5Sec 1Min 5Min Status Size Name -------------------------------------------------------------------------------- 14571 14564 1442% 1437% 1440% R 883704 ucode_pkt_PPE0
For specific core distribution of the Catalyst 8000 platform series it can be reviewed the links:
To verify how the cores are currently partitioned use this verification command:
Router#show platform software cpu allocation
CPU alloc information:
Control plane cpu alloc: 0-1,12-13
Data plane cpu alloc: 2-11,14-19
Service plane cpu alloc: 0
Slow control plane cpu alloc:
Template used: default-data_plane_heavy
Because the CPU cores dedicated to the Data Plane show 100% utilization, you must use this command to see the actual processing load on the Quantum Flow Processor (QFP) :
Router#show platform hardware qfp active datapath utilization
CPP 0: 5 secs 1 min 5 min 60 min
Input: Total (pps) 62 71 75 73
(bps) 399280 514352 572520 559440
Output: Total (pps) 61 71 75 73
(bps) 391904 514648 573408 560424
Processing: Load (pct) 7 8 8 8
Crypto/IO
Crypto: Load (pct) 0 0 0 0
RX: Load (pct) 0 0 0 0
TX: Load (pct) 10 9 9 9
Idle (pct) 90 90 90 90
What to look for:
| Revision | Publish Date | Comments |
|---|---|---|
1.0 |
24-Apr-2026
|
Initial Release |