- Code license
GNU GPL v3
NEWS (last update 4.11.2014):
There is a new bug fix release 3.1.3 available now.
- Full Uncore Support for Nehalem EX and Westmere EX
- Atom Silvermont (Avoton + BayTrail) support
- Read Marker API results and derived metrics in instrumented application (Patch by Julian Kunkel)
- More low-level benchmarks for likwid-bench
- Kernel module for enabling the RDPMC instruction
- Use RDPMC for fixed and general purpose core-local counters if possible
- New undocumented but working events
- Support for all RAPL domains in likwid-powermeter
- Better PCI device lookup
- Lots of bug fixes
The release is available here. This link is also available in the sidebar under Downloads.
I will regularly blog posts about my likwid development and issues around performance related questions. You can find the blog here:
Likwid stands for Like I knew what I am doing. This project contributes easy to use command line tools for Linux to support programmers in developing high performance multi threaded programs.
It contains the following tools:
- likwid-topology: Show the thread and cache topology
- likwid-perfctr: Measure hardware performance counters on Intel and AMD processors
- likwid-features: Show and Toggle hardware prefetch control bits on Intel Core 2 processors
- likwid-pin: Pin your threaded application without touching your code (supports pthreads, Intel OpenMP and gcc OpenMP)
- likwid-bench: Benchmarking framework allowing rapid prototyping of threaded assembly kernels
- likwid-mpirun: Script enabling simple and flexible pinning of MPI and MPI/threaded hybrid applications
- likwid-perfscope: Frontend for likwid-perfctr timeline mode. Allows live plotting of performance metrics.
- likwid-powermeter: Tool for accessing RAPL counters and query Turbo mode steps on Intel processor.
- likwid-memsweeper: Tool to cleanup ccNUMA memory domains and force eviction of dirty cachelines from caches.
- likwid-setFrequencies: Tool to set specific processor frequencies.
Likwid stands out because:
- No kernel patching, any vanilla linux 2.6 or newer kernel works
- Transparent, always clear which events are chosen, event tags have the same naming as in documentation
- Lightweight, LIKWID tries to add no overhead and keeps out of your way.
- Easy to use, simple to build, no need to touch your code, configurable from outside. Clear CLI interface.
- Multiplatform, likwid supports Intel and AMD processors
- Up to date, likwid tries to fully support new processors as soon as possible
- Extensible, you can add functionality by means of simple text files
If you encounter problems feel free to ask questions in the User Mailing List.