New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

github.com/ipld/go-ipld-prime/storage/benchmarks

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/ipld/go-ipld-prime/storage/benchmarks

  • v0.0.0-20250127162013-0264ec4aa9f9
  • Source
  • Go
  • Socket score

Version published
Created
Source

benchmarks

This is a small module that pulls in a bunch of storage implementations, as well as legacy implementations via the adapter modules, and benchmarks all of them on the same benchmarks.

There's no reason to import this code, so the go.mod file uses relative paths shamelessly. (You can create your own benchmarks using the code in ../tests, which contains most of the engine; this package is just tables of setup.)

What variations do the benchmarks exercise?

  • the various storage implementations!
    • in some cases: variations of parameters to individual storage implementations. (TODO)
  • puts and gets. (TODO: currently only puts.)
  • various distributions of data size. (TODO)
  • block mode vs streaming mode. (TODO)
  • end-to-end use via linksystem with small cbor objects. (TODO)
    • (this measures a lot of things that aren't to do with the storage itself -- but is useful to contextualize things.)

Running the benchmarks on variations in hardware and filesystem may also be important! Many of these storage systems use the disk in some way.

Why is the module structured like this?

Because many of the storage implementations are also their own modules, and we don't want to have the go-ipld-prime module pull in a huge universe of transitive dependencies.

See similar discussion in ../README_adapters.md.

It may be worth pulling this out into a new git repo in the future, especially if we want to add more and more implementations to what we benchmark, or develop additional tools for deploying the benchmark on varying hardware, etc. For now, it incubates here.

FAQs

Package last updated on 27 Jan 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc