Skip to content

More and better benchmarks are needed #7532

Description

@emberian

We have few good, solid benchmarks that stress a single part of the codegen or libraries. These are necessary to be able to be able to easily spot perfomance regressions, as well as have a good quantitative data about Rust's performance.

Benchmarks should cover both space and time characteristics, and should use the built-in bench runner where possible. Some ideas:

  • Allocating an object with a destructor
  • Allocating a @-ptr
  • Destructuring an enum/struct/tuple/tuple struct/vector
  • Pattern matching
  • Numeric manipulation (should be covered fairly well by the current shootout stuff, but should be extracted)
  • Data structure manipulation (vec benchmarks etc, similar to what core-map and friends do)
  • String manipulation
  • Method call
  • Trait object method call
  • Task communication (like pingpong does) with the various primitives (one-shots, streams, protocols)
  • Logging

An important note: these benchmarks aren't intended for comparison to other languages (although they could be useful for that in the future), but for tracking the performance of Rust.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-testsuiteArea: The testsuite used to check the correctness of rustcE-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions