blob: 31832d159437ee74d188e6b5496f1d8f0f338826 [file] [log] [blame]
use test::Bencher;
use super::page_table::PageTable;
#[bench]
fn bench_paged_mem_read(b: &mut Bencher) {
let mut pt = PageTable::new();
assert_eq!(pt.virtual_alloc(0x00100000), true);
assert_eq!(pt.virtual_alloc(0x00200000), true);
b.iter(|| {
assert_eq!(pt.read_u64(0x00100000), Some(0));
assert_eq!(pt.read_u64(0x00200000), Some(0));
assert_eq!(pt.read_u64(0x00300000), None);
});
}
#[bench]
fn bench_paged_mem_write(b: &mut Bencher) {
let mut pt = PageTable::new();
assert_eq!(pt.virtual_alloc(0x00100000), true);
assert_eq!(pt.virtual_alloc(0x00200000), true);
b.iter(|| {
assert_eq!(pt.write_u64(0x00100000, 1), true);
assert_eq!(pt.write_u64(0x00200000, 1), true);
assert_eq!(pt.write_u64(0x00300000, 1), false);
});
}