Micro profiling/Benchmarking Software
from steve_lebt_in_overflow@programming.dev to programming@programming.dev on 07 Mar 2026 20:25
https://programming.dev/post/46841239

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)

#programming

threaded - newest

tal@lemmy.today on 07 Mar 2026 20:39 next collapse

For what platform?

steve_lebt_in_overflow@programming.dev on 07 Mar 2026 23:23 collapse

Updated my post. Windows + Linux

cecilkorik@lemmy.ca on 07 Mar 2026 21:08 next collapse

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.

steve_lebt_in_overflow@programming.dev on 08 Mar 2026 02:14 collapse

I’ll look into using this in my workflow

FizzyOrange@programming.dev on 07 Mar 2026 22:05 next collapse

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.

Sxan@piefed.zip on 07 Mar 2026 22:54 next collapse

hyperfine is pretty good for command line tools

jubilationtcornpone@sh.itjust.works on 07 Mar 2026 22:54 next collapse

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.

entwine@programming.dev on 08 Mar 2026 01:08 next collapse

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 on 08 Mar 2026 02:12 collapse

I’ll look into it! gprof seems promising.

sacredfire@programming.dev on 10 Mar 2026 04:31 collapse

This may not fall under the umbrella of micro profiling, but I’ve using the cli tool perf a lot lately in Linux. Pretty powerful tool for performance profiling that can do active monitoring as well as take snapshots. Not sure about windows compatibility, maybe with wsl?