Skip to content

Mono interpreter performance optimizations #47520

Open
@BrzVlad

Description

@BrzVlad

Following #43681 and #46037, the interpreter allows for additional improvements. This issue tracks additional improvements that we plan to do, loosely ordered by their priority. This list will be updated with additional improvements that are deemed useful.

Optimizations Done

Planned optimizations

  • Loop unrolling
  • Struct field promotion
  • Constant propagation of string literals
  • Move constant declaration from common paths to their use location
  • Improve inlining heuristic
  • Additional hardware / numerics intrinsics
  • Optimize out unnecessary MINT_CKNULL, by tracking nullability of some vars
  • Optimize out empty finally blocks
  • Loop-invariant hoisting
  • Better track type of vars and remove redundant CONV opcodes

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions