filecoin-project / builtin-actors

The Filecoin built-in actors
Other
80 stars 75 forks source link

Optimize with PGO #1404

Open Stebalien opened 1 year ago

Stebalien commented 1 year ago

We should try optimizing the built-in actors with PGO, e.g., by profiling against the test vectors. This can often lead to a ~5%+ improvement in performance.

Stebalien commented 1 year ago

To do this, we'll likely want to build an entire "release" pipeline that:

  1. Takes some recent test vectors (possibly extracting them from the network?).
  2. Takes the builtin actors we're intending to release.
  3. Builds said actors with profiling support enabled (in wasm? I think this is possible?).
  4. Executes the test vectors against this bundle.
  5. Compiles a profile and checks it into the "release" branch.
  6. Finally, builds the actors with this profile.

This is a non-trivial amount of work and likely not the highest priority. But it would be an interesting project for someone wishing to onboard into the ecosystem.