Skip to main content

Wrapper package for the einsum benchmark dataset and code to create new instances of the various types used in the benchmark

Project description

Einsum Benchmark Data

Benchmark data repository accompanying the paper: "Einsum Benchmark: Enabling the Development of Next-Generation Tensor Execution Engines". It includes a package to easily work with the benmark data and all methods we used to convert and create our instances so you can create new ones yourself.

Installation

Install our base package, you will need at least python 3.10:

pip install einsum_benchmark

Basic Usage

Now you can load and run an instance like this:

import opt_einsum as oe
import einsum_benchmark

instance = einsum_benchmark.instances["qc_circuit_n49_m14_s9_e6_pEFGH_simplified"]

opt_size_path_meta = instance.paths.opt_size
print("Size optimized path")
print("log10[FLOPS]:", round(opt_size_path_meta.flops, 2))
print("log2[SIZE]:", round(opt_size_path_meta.size, 2))
result = oe.contract(
    instance.format_string, *instance.tensors, optimize=opt_size_path_meta.path
)
print("sum[OUTPUT]:", result.sum(), instance.result_sum)

For more information please read our docs.

The code for our experiments is here: https://github.com/ti2-group/einsum_benchmark_experiments

Acknowledgements

The broader data collection process included contributions from individuals whose data was transformed. We duly acknowledge the following for making their data publicly available:

Moreover, we thank the following authors of open source software used to generated instances:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

einsum_benchmark-0.1.7.tar.gz (77.8 kB view details)

Uploaded Source

Built Distribution

einsum_benchmark-0.1.7-py3-none-any.whl (99.2 kB view details)

Uploaded Python 3

File details

Details for the file einsum_benchmark-0.1.7.tar.gz.

File metadata

  • Download URL: einsum_benchmark-0.1.7.tar.gz
  • Upload date:
  • Size: 77.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.15.4 CPython/3.12.3 Darwin/23.1.0

File hashes

Hashes for einsum_benchmark-0.1.7.tar.gz
Algorithm Hash digest
SHA256 6e2762b30d942ed8dcdc1aca2de70c2ae12dc2e959bc03472301c0e15c450094
MD5 a278eb4c57987ed61db4f5ddba99d7c5
BLAKE2b-256 e21d63f93e62408fe0e4b501b828037892c5d205e85e3dbd59076bb8f8ff39c6

See more details on using hashes here.

File details

Details for the file einsum_benchmark-0.1.7-py3-none-any.whl.

File metadata

File hashes

Hashes for einsum_benchmark-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8ba0eadd36a1371267b23b42185ce74f0398856daf3c8ca883195c70458487b3
MD5 3f3d9c897f885c5f2004c6d34516c2e3
BLAKE2b-256 d99b6ad6c240ecd3dcd2c0d3797b093217e3064f4c606b58ba2d5df7e943ec35

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page