Merge pull request #1168 from alex/set-iter-bench

Added a benchmark for set iter
This commit is contained in:
Yuji Kanagawa 2020-09-09 16:48:47 +09:00 committed by GitHub
commit cc6d266c47
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

21
benches/bench_set.rs Normal file
View file

@ -0,0 +1,21 @@
#![feature(test)]
extern crate test;
use pyo3::prelude::*;
use pyo3::types::PySet;
use test::Bencher;
#[bench]
fn iter_set(b: &mut Bencher) {
let gil = Python::acquire_gil();
let py = gil.python();
const LEN: usize = 100_000;
let set = PySet::new(py, &(0..LEN).collect::<Vec<_>>()).unwrap();
let mut sum = 0;
b.iter(|| {
for x in set.iter() {
let i: u64 = x.extract().unwrap();
sum += i;
}
});
}