The strace
command is primarily used for tracing system calls and signals made by a process. While it can generate some CPU load because of the overhead it introduces, it’s not typically used to intentionally create a “huge” CPU load. If your goal is to stress the CPU for testing or benchmarking purposes, you may want to consider other tools like stress, yes, or stress-ng.
However, if you still want to use strace
to generate some CPU load, you can do so by tracing a process that performs a lot of system calls. For example, you can run a simple infinite loop that makes system calls continuously and then use strace
to trace that process. Here’s an example:
# Create a simple script called infinite_loop.sh that contains a loop making frequent system calls:
#!/bin/bash
while true; do
echo "Hello, world!" >/dev/null
done
# Make the script executable:
chmod +x infinite_loop.sh
# Run the script in the background:
./infinite_loop.sh &
# Find the process ID (PID) of the running script:
ps aux | grep infinite_loop.sh
# Use strace to trace the process by specifying its PID:
strace -p <PID>
I’m a DevOps/SRE/DevSecOps/Cloud Expert passionate about sharing knowledge and experiences. I am working at Cotocus. I blog tech insights at DevOps School, travel stories at Holiday Landmark, stock market tips at Stocks Mantra, health and fitness guidance at My Medic Plus, product reviews at I reviewed , and SEO strategies at Wizbrand.
Please find my social handles as below;
Rajesh Kumar Personal Website
Rajesh Kumar at YOUTUBE
Rajesh Kumar at INSTAGRAM
Rajesh Kumar at X
Rajesh Kumar at FACEBOOK
Rajesh Kumar at LINKEDIN
Rajesh Kumar at PINTEREST
Rajesh Kumar at QUORA
Rajesh Kumar at WIZBRAND