544 |
544 |
545 def iterparts(bundle): |
545 def iterparts(bundle): |
546 for part in bundle.iterparts(): |
546 for part in bundle.iterparts(): |
547 pass |
547 pass |
548 |
548 |
|
549 def iterpartsseekable(bundle): |
|
550 for part in bundle.iterparts(seekable=True): |
|
551 pass |
|
552 |
549 def seek(bundle): |
553 def seek(bundle): |
550 for part in bundle.iterparts(): |
554 for part in bundle.iterparts(seekable=True): |
551 part.seek(0, os.SEEK_END) |
555 part.seek(0, os.SEEK_END) |
552 |
556 |
553 def makepartreadnbytes(size): |
557 def makepartreadnbytes(size): |
554 def run(): |
558 def run(): |
555 with open(bundlepath, 'rb') as fh: |
559 with open(bundlepath, 'rb') as fh: |
581 ]) |
585 ]) |
582 elif isinstance(bundle, bundle2.unbundle20): |
586 elif isinstance(bundle, bundle2.unbundle20): |
583 benches.extend([ |
587 benches.extend([ |
584 (makebench(forwardchunks), 'bundle2 forwardchunks()'), |
588 (makebench(forwardchunks), 'bundle2 forwardchunks()'), |
585 (makebench(iterparts), 'bundle2 iterparts()'), |
589 (makebench(iterparts), 'bundle2 iterparts()'), |
|
590 (makebench(iterpartsseekable), 'bundle2 iterparts() seekable'), |
586 (makebench(seek), 'bundle2 part seek()'), |
591 (makebench(seek), 'bundle2 part seek()'), |
587 (makepartreadnbytes(8192), 'bundle2 part read(8k)'), |
592 (makepartreadnbytes(8192), 'bundle2 part read(8k)'), |
588 (makepartreadnbytes(16384), 'bundle2 part read(16k)'), |
593 (makepartreadnbytes(16384), 'bundle2 part read(16k)'), |
589 (makepartreadnbytes(32768), 'bundle2 part read(32k)'), |
594 (makepartreadnbytes(32768), 'bundle2 part read(32k)'), |
590 (makepartreadnbytes(131072), 'bundle2 part read(128k)'), |
595 (makepartreadnbytes(131072), 'bundle2 part read(128k)'), |