All Projects → iterative → dvc-bench

iterative / dvc-bench

Licence: Apache-2.0 license
Benchmarks for DVC

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to dvc-bench

IGUANA
IGUANA is a benchmark execution framework for querying HTTP endpoints and CLI Applications such as Triple Stores. Contact: [email protected]
Stars: ✭ 22 (+29.41%)
Mutual labels:  benchmarks, performance-testing
lighthouse-keeper
This package is no longer under active development. We recommend using Lighthouse CI. CLI tool for running Google’s Lighthouse checks
Stars: ✭ 15 (-11.76%)
Mutual labels:  performance-testing
ltc
Online web application-dashboard for report analyzing,running and online monitoring of load tests started with JMeter
Stars: ✭ 185 (+988.24%)
Mutual labels:  performance-testing
chef-load
chef-load - a tool for simulating load on a Chef Infra Server and/or a Chef Automate server
Stars: ✭ 30 (+76.47%)
Mutual labels:  performance-testing
jmeter-to-k6
Converts JMeter .jmx files to k6 JS code
Stars: ✭ 57 (+235.29%)
Mutual labels:  performance-testing
scala-benchmarks
An independent set of benchmarks for testing common Scala idioms.
Stars: ✭ 65 (+282.35%)
Mutual labels:  benchmarks
postman-to-k6
Converts Postman collections to k6 script code
Stars: ✭ 269 (+1482.35%)
Mutual labels:  performance-testing
load-testing-toolkit
Collection of open-source tools for debugging, benchmarking, load and stress testing your code or services.
Stars: ✭ 65 (+282.35%)
Mutual labels:  performance-testing
detect-gpu
Classifies GPUs based on their 3D rendering benchmark score allowing the developer to provide sensible default settings for graphically intensive applications.
Stars: ✭ 749 (+4305.88%)
Mutual labels:  benchmarks
miopen-benchmark
benchmarking miopen
Stars: ✭ 17 (+0%)
Mutual labels:  benchmarks
HTAPBench
Benchmark suite to evaluate HTAP database engines
Stars: ✭ 15 (-11.76%)
Mutual labels:  benchmarks
LinqBenchmarks
Benchmarking LINQ and alternative implementations
Stars: ✭ 138 (+711.76%)
Mutual labels:  benchmarks
mzbench
Distributed Benchmarking
Stars: ✭ 39 (+129.41%)
Mutual labels:  performance-testing
awesome-locust
A collection of resources covering different aspects of Locust load testing tool usage.
Stars: ✭ 40 (+135.29%)
Mutual labels:  performance-testing
AutoMeter-API
AutoMeter-API是一款针对分布式服务,微服务API功能和性能一体的自动化测试平台,一站式解决应用,服务,API,环境管理,用例,条件,测试场景,计划,测试报告,功能/性能测试兼容支持的一体化工作平台
Stars: ✭ 105 (+517.65%)
Mutual labels:  performance-testing
synthmark
Audio performance benchmark for jitter, theoretical latency, etc.
Stars: ✭ 48 (+182.35%)
Mutual labels:  performance-testing
ultron
new repository: https://github.com/wosai/ultron
Stars: ✭ 15 (-11.76%)
Mutual labels:  performance-testing
jsperf
JavaScript Performance Benchmarks
Stars: ✭ 15 (-11.76%)
Mutual labels:  benchmarks
reframe
A powerful Python framework for writing and running portable regression tests and benchmarks for HPC systems.
Stars: ✭ 154 (+805.88%)
Mutual labels:  performance-testing
benchmark-trend
Measure performance trends of Ruby code
Stars: ✭ 60 (+252.94%)
Mutual labels:  performance-testing

dvc-bench

Benchmarking dvc with pytest-benchmark.

Setting up

$ pip install -r requirements.txt
$ dvc pull # optional, otherwise will pull datasets dynamically

Running all benchmarks

$ pytest

Running one benchmark

$ pytest tests/benchmarks/cli/commands/test_add.py

CLI options

$ pytest -h
...
 --size={tiny,small,large}                                   
                       Size of the dataset/datafile to use in
                       tests (default: small)
 --remote={azure,gdrive,gs,hdfs,http,oss,s3,ssh,webdav}
                       Remote type to use in tests (default: local)
...

Comparing results

$ py.test-benchmark compare --histogram histograms/ --group-by name --sort name --csv results.csv

Testing different dvc versions

pip install dvc==2.5.4
pytest
pip install dvc==2.6.0
pytest

Contributing

tests/benchmarks structure:

  • cli: should be able to run these with any dvc (rpm, deb, pypi, snap, etc) (could be used in dvc-test repo too)
    • commands: granular tests for individual commands. These should have a cached setup, so that we could use them during rapid development instead of our hand-written scripts. Every test could be run in a separate machine.
    • stories: multistage start-to-end benchmarks, useful for testing workflows (e.g. in documentation, see test_sharing inspired by sharing-data-and-models use-case. Every full story could be run in a separate machine.
  • api: for python api only.
    • methods: granular tests for individual methods (e.g. api.open/read). Same reasoning as in cli.commands
    • stories: same as cli.stories but for our api. E.g. imagine using our api with pandas or smth like that.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].