Skip to content

Commit 906ccab

Browse files
committed
---
yaml --- r: 123871 b: refs/heads/snap-stage3 c: 90fe1a6 h: refs/heads/master i: 123869: 2341fca 123867: 656ed7d 123863: 6a9e592 123855: ac6c195 123839: 6269438 v: v3
1 parent b705008 commit 906ccab

File tree

2 files changed

+50
-6
lines changed

2 files changed

+50
-6
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: 4e2da7cb79143b0e7206a684629ed942599ec8e9
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4-
refs/heads/snap-stage3: f1ea540e9024db9b5d2e6a6e92431875feb345b3
4+
refs/heads/snap-stage3: 90fe1a632bd38633006ea53f92a1da14944fd835
55
refs/heads/try: 296eb104620b346d88bc4a2c2ab7693e6d3db019
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b

branches/snap-stage3/src/libstd/io/mem.rs

Lines changed: 49 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -607,17 +607,61 @@ mod test {
607607
assert_eq!(buf.as_slice(), &[7, 8, 6]);
608608
}
609609

610-
#[bench]
611-
fn bench_mem_writer(b: &mut Bencher) {
610+
fn do_bench_mem_writer(b: &mut Bencher, times: uint, len: uint) {
611+
let src: Vec<u8> = Vec::from_elem(len, 5);
612+
612613
b.iter(|| {
613614
let mut wr = MemWriter::new();
614-
for _i in range(0u, 10) {
615-
wr.write([5, .. 10]).unwrap();
615+
for _ in range(0, times) {
616+
wr.write(src.as_slice()).unwrap();
616617
}
617-
assert_eq!(wr.unwrap().as_slice(), [5, .. 100].as_slice());
618+
619+
let v = wr.unwrap();
620+
assert_eq!(v.len(), times * len);
621+
assert!(v.iter().all(|x| *x == 5));
618622
});
619623
}
620624

625+
#[bench]
626+
fn bench_mem_writer_001_0000(b: &mut Bencher) {
627+
do_bench_mem_writer(b, 1, 0)
628+
}
629+
630+
#[bench]
631+
fn bench_mem_writer_001_0010(b: &mut Bencher) {
632+
do_bench_mem_writer(b, 1, 10)
633+
}
634+
635+
#[bench]
636+
fn bench_mem_writer_001_0100(b: &mut Bencher) {
637+
do_bench_mem_writer(b, 1, 100)
638+
}
639+
640+
#[bench]
641+
fn bench_mem_writer_001_1000(b: &mut Bencher) {
642+
do_bench_mem_writer(b, 1, 1000)
643+
}
644+
645+
#[bench]
646+
fn bench_mem_writer_100_0000(b: &mut Bencher) {
647+
do_bench_mem_writer(b, 100, 0)
648+
}
649+
650+
#[bench]
651+
fn bench_mem_writer_100_0010(b: &mut Bencher) {
652+
do_bench_mem_writer(b, 100, 10)
653+
}
654+
655+
#[bench]
656+
fn bench_mem_writer_100_0100(b: &mut Bencher) {
657+
do_bench_mem_writer(b, 100, 100)
658+
}
659+
660+
#[bench]
661+
fn bench_mem_writer_100_1000(b: &mut Bencher) {
662+
do_bench_mem_writer(b, 100, 1000)
663+
}
664+
621665
#[bench]
622666
fn bench_mem_reader(b: &mut Bencher) {
623667
b.iter(|| {

0 commit comments

Comments
 (0)