A simple timing utility written in Rust

CallMeAlphabet1 pts0 comments

GitHub - CallMeAlphabet/timeit: A simple tool written in Rust to benchmark commands. · GitHub

/" data-turbo-transient="true" />

Skip to content

Search or jump to...

Search code, repositories, users, issues, pull requests...

-->

Search

Clear

Search syntax tips

Provide feedback

--><br>We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

-->

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up

Appearance settings

Resetting focus

You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

{{ message }}

CallMeAlphabet

timeit

Public

Notifications<br>You must be signed in to change notification settings

Fork

Star

main

BranchesTags

Go to file

CodeOpen more actions menu

Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit

History<br>4 Commits<br>4 Commits

src

src

.gitignore

.gitignore

Cargo.toml

Cargo.toml

LICENSE

LICENSE

README.md

README.md

View all files

Repository files navigation

timeit — I wanted something better than fish's 'time'

A simple, precise command timing utility written in Rust.<br>Because I like showing off how fast my hex dumping tool, fasthex, and others are.

Install

cargo install --git https://github.com/CallMeAlphabet/timeit

Uninstall

cargo uninstall timeit

Help Message

[args...]<br>timeit --compare "" ""

FLAGS:<br>-q, --quiet Only show average (suppress per-run output)<br>-w, --warmup N Run N warmup iterations (5s cooldown after)<br>-r, --runs N Number of measured runs (default: 1)<br>-p, --profile=NAME Load profile from ~/.local/bin/timeit.d/NAME.profile<br>-h, --help Show this help<br>--median Show median instead of average<br>--timeout DURATION Kill commands after timeout (e.g., 30s, 5m, 100ms)<br>--compare Compare two commands (requires two quoted commands)

DISPLAY MODES:<br>--seconds Show time in decimal seconds only (e.g., 70.982441221)<br>--millis Show time in decimal milliseconds (e.g., 70982.441221)<br>--micros Show time in decimal microseconds (e.g., 70982441.221)<br>--nanos Show time in integer nanoseconds (e.g., 70982441221)<br>(default: auto-format with smart units, e.g., 1m 10s 982ms 441μs 221ns)

EXAMPLES:<br>timeit fasthex file.bin<br>timeit -r 10 --median fasthex file.bin<br>timeit -w 3 -r 10 --timeout 30s fasthex file.bin<br>timeit -q -r 100 fasthex file.bin<br>timeit --profile=bench fasthex file.bin<br>timeit --compare "hexdump file.bin" "fasthex file.bin"<br>timeit --timeout 5m long-running-cmd

TIMEOUT UNITS:<br>ns, μs/us, ms, s, m, h (e.g., 100ms, 30s, 5m, 1h)

PROFILES:<br>Create profile files in ~/.local/bin/timeit.d/ with format:

runs=100<br>warmup=5<br>quiet=true">❯ timeit --help<br>timeit - precise command timing utility

USAGE:<br>timeit [OPTIONS] [args...]<br>timeit --compare "" ""

FLAGS:<br>-q, --quiet Only show average (suppress per-run output)<br>-w, --warmup N Run N warmup iterations (5s cooldown after)<br>-r, --runs N Number of measured runs (default: 1)<br>-p, --profile=NAME Load profile from ~/.local/bin/timeit.d/NAME.profile<br>-h, --help Show this help<br>--median Show median instead of average<br>--timeout DURATION Kill commands after timeout (e.g., 30s, 5m, 100ms)<br>--compare Compare two commands (requires two quoted commands)

DISPLAY MODES:<br>--seconds Show time in decimal seconds only (e.g., 70.982441221)<br>--millis Show time in decimal milliseconds (e.g., 70982.441221)<br>--micros Show time in decimal microseconds (e.g., 70982441.221)<br>--nanos Show time in integer nanoseconds (e.g., 70982441221)<br>(default: auto-format with smart units, e.g., 1m 10s 982ms 441μs 221ns)

EXAMPLES:<br>timeit fasthex file.bin<br>timeit -r 10 --median fasthex file.bin<br>timeit -w 3 -r 10 --timeout 30s fasthex file.bin<br>timeit -q -r 100 fasthex file.bin<br>timeit --profile=bench fasthex file.bin<br>timeit --compare "hexdump file.bin" "fasthex file.bin"<br>timeit --timeout 5m long-running-cmd

TIMEOUT UNITS:<br>ns, μs/us, ms, s, m, h (e.g., 100ms, 30s, 5m, 1h)

PROFILES:<br>Create profile files in ~/.local/bin/timeit.d/ with format:

runs=100<br>warmup=5<br>quiet=true

About

A simple tool written in Rust to benchmark commands.

Resources

Readme

License

GPL-3.0 license

Uh oh!

There was an error while loading. Please reload this page.

Activity

Stars

stars

Watchers

watching

Forks

forks

Report repository

Releases

No releases published

Packages

Uh oh!

There was an error while loading. Please reload this page.

Contributors

Uh oh!

There was an error while loading. Please reload this page.

Languages

Rust<br>100.0%

You can’t perform that action at this time.

timeit file show fasthex time profile

Related Articles