log cpu usage on linux

C++
lscpu

# Or
cat /proc/cpuinfo
while true; do (echo "%CPU %MEM ARGS $(date)" && ps -e -o pcpu,pmem,args --sort=pcpu | cut -d" " -f1-5 | tail) >> ps.log; sleep 5; done

Source

Also in C++: