this post was submitted on 07 Mar 2026
10 points (100.0% liked)

Programming

25987 readers
174 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS
 

What kind of code microprofiling/benchmarking software do you guys use? I was wondering if anyone knew of any that can also be used as a separate tool (open source preferred but I dont mind proprietary) rather than already integrated into something like Visual Studio.

Edit: I would like it to support Windows and Linux. I mostly program in C right now, but expanding into other languages (e.g., Rust, Python)

top 9 comments
sorted by: hot top controversial new old
[–] cecilkorik@lemmy.ca 3 points 2 days ago (1 children)

I might be going the wrong direction of "micro" here but time is the very minimal, tiny, and traditional unix way.

For example:

$ time curl https://lemmy.ca/post/61453347 > /dev/null
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  175k    0  175k    0     0   525k      0 --:--:-- --:--:-- --:--:--  526k

real    0m0.343s
user    0m0.030s
sys     0m0.016s

There are also a large number of other profiling outputs you can ask time to spit out by passing it the appropriate command line flags.

I'll look into using this in my workflow

[–] entwine@programming.dev 2 points 2 days ago (1 children)

There are a lot out there in C++ land, and I'm sure C has a lot too. You can't really go wrong with any if them tbh, just check if it has a lot of stars and go for it. I've used microprofile before and it served me well. You can view live data from an embedded webserver.

Perfetto is a powerful one from Google, but I've never used it.

Also, don't overlook gprof. That works via auto instrumentation done by the compiler, so it'll give you the most detailed look at performance with zero work from you (besides interpreting the sometimes massive amount of info)

[–] steve_lebt_in_overflow@programming.dev 2 points 2 days ago* (last edited 2 days ago)

I'll look into it! gprof seems promising.

If you want to do resource profiling, Visual Studio can do that out of the box. For simple benchmarking, specifically for seeing how long certain calls take, I just just the Stopwatch class and ouput the result to a log entry. Assuming you're using C# that is.

[–] FizzyOrange@programming.dev 2 points 2 days ago

For benchmarking commands you can't beat hyperfine. But if you are really talking microbenchmarks you have to do that in-program so it'll depend on what language you're using.

E.g. for Rust Criterion is the go-to option.

[–] tal@lemmy.today 2 points 2 days ago (1 children)

Updated my post. Windows + Linux

[–] Sxan@piefed.zip 1 points 2 days ago

hyperfine is pretty good for command line tools