Profiler tool shows CPU usage for each process running in RouterOS. It helps to identify which process is using most of the CPU resources.
[admin@dzeltenais_burkaans] > /tool profile NAME USAGE sstp 9% ppp 0.5% ethernet 0% queue-mgmt 0% console 0.5% dns 0% winbox 0% logging 0% management 1.5% ospf 0% idle 87.5% profiling 0.5% queuing 0% routing 0% bridging 0% unclassified 0.5%
CPU usage on multi-core systems
On multi-core systems tool allows to specify per core CPU usage. For example, to view CPU usage on second core use following command:
[admin@x86-test] > /tool profile cpu=2 NAME CPU USAGE ethernet 1 0% kvm 1 2.5% management 1 0.5% idle 1 96.5% profiling 1 0% unclassified 1 0.5%
"cpu" parameter allows to specify integer number which represents a core or two of predefined values all and total
- total - this value sets to show sum of all core usages;
- all - value sets to show cpu usages separately for every available core
Example with both values on two core system:
[admin@x86-test] > /tool profile cpu=all NAME CPU USAGE ethernet 1 0% kvm 0 0% kvm 1 4.5% management 0 0% management 1 0.5% idle 0 100% idle 1 93% profiling 0 0% profiling 1 2% [admin@x86-test] > /tool profile cpu=total NAME CPU USAGE ethernet all 0% console all 0% kvm all 2.7% management all 0% idle all 97.2% profiling all 0% bridging all 0%
Tool is also available in winbox:
Profile classifies processes in several classifiers. Most of them are self explanatory and does not require detailed explanation.
- idle - shows unused CPU. Typically idle=100%-(sum of all process cpu usages).
- ethernet - cpu used by ethernets when sending/receiving packets
- encrypting - cpu used by packet encryption
- ipsec - IP security
- queuing - packet queuing
- firewall - packet processing in Ip firewall
- l7-matcher - cpu used by Layer7 matcher.
- p2p-matcher - Peer-to-peer traffic matcher in ip firewall
- gre - Gre tunnels
- eoip - EoIP tunnels
- m3p - MikroTik Packet Packer Protocol
- profiling - cpu used by Profiler tool itself
- btest - bandwidth test tool
- flash - cpu usage when writing to NAND
- disk - cpu usage when wiring to Disk
- networking - core packet processing
- radv - IPv6 route advertisement
- ntp - NTP server/client
- pim - Multicast routing protocol
- synchronous - cpu usage by synchronous cards
- supout.rif - cpu used by supout.rif file creator.
- management - RouterOS management processes that do not fall into any other classifier. For example, when routes added to kernel, internal messaging exchange between RouterOS applications, etc.
- unclassified - any other processes that were not classified.