Skip to content

Commit

Permalink
Merge branch 'v0.8' into dev
Browse files Browse the repository at this point in the history
  • Loading branch information
jmuehlig committed Nov 9, 2024
2 parents 2391cca + bc66586 commit 5c9e71d
Show file tree
Hide file tree
Showing 6 changed files with 233 additions and 83 deletions.
8 changes: 7 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,14 @@
* New feature: Access interim results from counters without stopping the counter using [live counters](docs/recording-live-events.md).
* New feature: Sampling the user stack (see [documentation](docs/sampling.md#user-stack)).

## v0.8.2
* Fixed compatibility for older Linux versions that don't provide `PERF_MEM_BLK`, `PERF_MEM_LVLNUM`, and `PERF_MEM_REMOTE`.

## v0.8.1
* Fixed error using decltype instead of typeof (by [@toge](https://github.com/toge))

## v0.8.0
* Restructured the build-system – thanks to [@foolnotion](https://github.com/jmuehlig/perf-cpp/commits?author=foolnotion):
* Restructured the build-system – thanks to [@foolnotion](https://github.com/foolnotion):
* Examples are no longer included into default build and must be activated with `-DBUILD_EXAMPLES=1` (see [documentation](docs/build.md#build-examples)).
* New feature: Added option to install the library using `-DCMAKE_INSTALL_PREFIX=/path/to/libperf-cpp` (see [documentation](docs/build.md#install-the-library)).
* New feature: Define period or frequency along with trigger events when sampling (see [documentation](docs/sampling.md#period--frequency)).
Expand Down
7 changes: 1 addition & 6 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -80,18 +80,13 @@ if(BUILD_EXAMPLES)
add_executable(data-analyzer EXCLUDE_FROM_ALL examples/data_analyzer.cpp examples/access_benchmark.cpp)
target_link_libraries(data-analyzer perf-cpp)

#### Read event values without stopping the counter.
add_executable(live-events EXCLUDE_FROM_ALL examples/live_events.cpp examples/access_benchmark.cpp)
target_link_libraries(live-events perf-cpp)

### One target for all examples
add_custom_target(examples)
add_dependencies(examples
single-thread inherit-thread multi-thread multi-cpu multi-process
instruction-pointer-sampling counter-sampling branch-sampling
address-sampling register-sampling multi-thread-sampling multi-cpu-sampling
multi-event-sampling amd-ibs-raw-sampling context-switch-sampling data-analyzer
live-events)
multi-event-sampling amd-ibs-raw-sampling context-switch-sampling data-analyzer)
endif()

### Target to create the perf list CSV
Expand Down
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ git clone https://github.com/jmuehlig/perf-cpp.git
cd perf-cpp

# Optional: Switch to the latest stable version
git checkout v0.8.1
git checkout v0.8.2

# Build the library (in build/)
cmake . -B build -DBUILD_EXAMPLES=1
Expand Down Expand Up @@ -131,8 +131,10 @@ All code examples are available in the [examples/](examples) folder.
* **[Changelog](CHANGELOG.md)**: Stay updated with the latest changes and improvements.

## System Requirements
* Support for C++ `17` features
* CMake version `3.10` or higher
* Minimum *Linux Kernel version*: `>= 4.0`
* Recommended *Linux Kernel version*: `>= 5.13` (older Kernels might not implement all features like sampling for latency).
* Recommended *Linux Kernel version*: `>= 5.13` (older Kernels might not implement all features like sampling for latency)
* Installed `perf` (check if `perf stat -- ls` provides any output, otherwise follow the instructions)

## Contribute and Engage with Us
Expand Down
6 changes: 3 additions & 3 deletions docs/build.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ git clone git clone https://github.com/jmuehlig/perf-cpp.git
cd perf-cpp

# Optional: switch to latest stable version
git checkout v0.8.1
git checkout v0.8.2
```

#### Generate the Makefile and Build
Expand Down Expand Up @@ -74,7 +74,7 @@ include(ExternalProject)
ExternalProject_Add(
perf-cpp-external
GIT_REPOSITORY "https://github.com/jmuehlig/perf-cpp"
GIT_TAG "v0.8.1"
GIT_TAG "v0.8.2"
PREFIX "lib/perf-cpp"
INSTALL_COMMAND cmake -E echo ""
)
Expand All @@ -92,7 +92,7 @@ include(FetchContent)
FetchContent_Declare(
perf-cpp-external
GIT_REPOSITORY "https://github.com/jmuehlig/perf-cpp"
GIT_TAG "v0.8.1"
GIT_TAG "v0.8.2"
)
FetchContent_MakeAvailable(perf-cpp-external)
```
Expand Down
Loading

0 comments on commit 5c9e71d

Please sign in to comment.