Skip to content
This repository has been archived by the owner on Aug 27, 2019. It is now read-only.
/ elapsed Public archive

Measure execution time of a block of Rust code

Notifications You must be signed in to change notification settings

matklad/elapsed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Time a block of Rust code

Build Status Docs crates.io

Deprecated

Debug representation for std::time::Duration is human-readable now, so this snipper works like a charm and doesn't require using external libraries:

let start = std::time::Instant();
let sum = (0..10_000).sum::<u64>();
eprintln!("elapsed {:?}", start.elapsed()); // note :?
println!("sum = {}", sum);
[dependencies]
elapsed = "0.1"
extern crate elapsed;
use elapsed::measure_time;

fn main() {
    let (elapsed, sum) = measure_time(|| {
        (0..10_000).sum::<u64>()
    });
    println!("elapsed = {}", elapsed);
    println!("sum = {}", sum);

    // Prints
    // elapsed = 227.81 μs
    // sum = 49995000
}

Inspired by measureTimeMillis in Kotlin.

About

Measure execution time of a block of Rust code

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages