recentpopularlog in


« earlier   
CPU Utilization is Wrong
Nowadays, CPUs have become much faster than main memory, and waiting on memory dominates what is still called "CPU utilization". When you see high %CPU in top(1), you might think of the processor as being the bottleneck – the CPU package under the heat sink and fan – when it's really those banks of DRAM.

Performance Monitoring Counters (PMCs): hardware counters that can be read using Linux perf, and other tools. For example, measuring the entire system for 10 seconds:

# perf stat -a -- sleep 10

The key metric here is instructions per cycle (insns per cycle: IPC), which shows on average how many instructions we were completed for each CPU clock cycle. The higher, the better (a simplification). The above example of 0.78 sounds not bad (78% busy?) until you realize that this processor's top speed is an IPC of 4.0. This is also known as 4-wide, referring to the instruction fetch/decode path. Which means, the CPU can retire (complete) four instructions with every clock cycle. So an IPC of 0.78 on a 4-wide system, means the CPUs are running at 19.5% their top speed. Newer Intel processors may move to 5-wide.

If your IPC is < 1.0, you are likely memory stalled, and software tuning strategies include reducing memory I/O, and improving CPU caching and memory locality, especially on NUMA systems. Hardware tuning includes using processors with larger CPU caches, and faster memory, busses, and interconnects.

If your IPC is > 1.0, you are likely instruction bound. Look for ways to reduce code execution: eliminate unnecessary work, cache operations, etc. CPU flame graphs are a great tool for this investigation. For hardware tuning, try a faster clock rate, and more cores/hyperthreads.
linux  cpu  performance  monitoring 
2 hours ago by some_hren
core 2 duo p8600 | eBay
Find great deals on eBay for core 2 duo p8600. Shop with confidence.
cpu  sl500 
yesterday by hmhxxx
AMD Ryzen 7 2700X Review: Redefining Ryzen - Tom's Hardware
Overall, the company claims that its 2000-series facilitates nearly equivalent gaming performance compared to similarly-priced Core CPUs, plus a 20% advantage in threaded workloads.
amd  cpu 
6 days ago by jasonsamuels
Intro - Verilator - Veripool
Open Source Free Verilog and EDA Tools
py  vlsi  eda  tool  toread  hardware  verilog  iss  synthesis  cpu  simulator 
6 days ago by cjitlal
GitHub - cornell-brg/pymtl: Python-based hardware modeling framework
GitHub is where people build software. More than 27 million people use GitHub to discover, fork, and contribute to over 80 million projects.
py  vlsi  eda  tool  toread  hardware  verilog  iss  synthesis  cpu 
6 days ago by cjitlal

Copy this bookmark:

to read