Skip to content
Snippets Groups Projects
Commit e366a7c30878 authored by Pierre-Yves David's avatar Pierre-Yves David :octopus:
Browse files

Add benchmark for perfrevlogwrite

We use different tests instead of variants because we expect them to have
significantly different performance patterns.
parent 70bb2a3dc1fc
No related branches found
No related tags found
No related merge requests found
......@@ -99,6 +99,60 @@
*args, **kwargs):
return self._run_one('--changelog', distance, nbrev)
class RevlogWriteTestSuite(BaseTestSuite):
params = BaseTestSuite.params[:]
param_names = BaseTestSuite.param_names[:]
timeout = 1800
# add a parameters for the number of read to make
param_names += ['nbrev']
params += [[100]]
def _run_one(self, target, nbrev, source, lazydeltabase=False):
cmd = [
"perfrevlogwrite",
"--quiet",
target,
"--startrev", "-%d" % nbrev,
"--source", source,
]
if lazydeltabase:
cmd.append("--lazydeltabase")
else:
cmd.append("--no-lazydeltabase")
return self.perfext(*cmd)
@params_as_kwargs
def track_perfrevlogwrite_changelog(self, nbrev, *args, **kwargs):
return self._run_one('--changelog', nbrev, 'full', lazydeltabase=False)
@params_as_kwargs
def track_perfrevlogwrite_manifest_full(self, nbrev, *args, **kwargs):
return self._run_one('--manifest', nbrev, 'full', lazydeltabase=False)
@params_as_kwargs
def track_perfrevlogwrite_manifest_parent_nonlazy(self, nbrev,
*args, **kwargs):
return self._run_one('--manifest', nbrev, 'parent-smallest',
lazydeltabase=False)
@params_as_kwargs
def track_perfrevlogwrite_manifest_parent_lazy(self, nbrev, *args, **kwargs):
return self._run_one('--manifest', nbrev, 'parent-smallest',
lazydeltabase=True)
@params_as_kwargs
def track_perfrevlogwrite_manifest_storage_nonlazy(self, nbrev,
*args, **kwargs):
return self._run_one('--manifest', nbrev, 'storage',
lazydeltabase=False)
@params_as_kwargs
def track_perfrevlogwrite_manifest_storage_lazy(self, nbrev, *args, **kwargs):
return self._run_one('--manifest', nbrev, 'storage',
lazydeltabase=True)
class ManifestPerfTestSuite(BaseTestSuite):
params = BaseTestSuite.params + [['persist', 'clear']]
param_names = BaseTestSuite.param_names + ['disk_cache']
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment