Fedora Packages

golang-github-hodgesds-perf-utils-devel Subpackage of golang-github-hodgesds-perf-utils

Perf Utilities for Go

This package is a go library for interacting with the perf subsystem in Linux. I had trouble finding a golang perf library so I decided to write this by using the linux’s perf as a reference. This library allows you to do things like see how many CPU instructions a function takes (roughly), profile a process for various hardware events, and other interesting things. Note that because the go scheduler can schedule a goroutine across many OS threads it becomes rather difficult to get an exact profile of an invididual goroutine. However, a few tricks can be used; first a call to runtime.LockOSThread to lock the current goroutine to an OS thread. Second a call to unix.SchedSetaffinity, with a CPU set mask set. Note that if the pid argument is set 0 the calling thread is used (the thread that was just locked). Before using this library you should probably read the perf_event_open man page which this library uses heavily. See this kernel guide for a tutorial how to use perf and some of the limitations. This package contains the source code needed for building packages that reference the following Go import paths: – github.com/hodgesds/perf-utils

Releases Overview

Release Stable Testing
Fedora Rawhide 0.7.0-6.fc41 -
Fedora 41 0.7.0-6.fc41 -
Fedora 40 0.7.0-4.fc40 -
File a new bug report »
Package Info

You can contact the maintainers of this package via email at golang-github-hodgesds-perf-utils dash maintainers at fedoraproject dot org.



Sources on Pagure