Skip to content

PGO should be the default for release build #355

Description

@k-sareen

We should take the most important plans and profile them for the "release" build. Users of MMTk should get the best performance for "release" mode as opposed to having to do extra work with the PGO build themselves. Important plans are ones such as Immix, Compressor, GenImmix, etc.

Activity

  1. qinsoon commented on May 25, 2026

    @qinsoon
    Member

    I imagine that it may not be easy to achieve this with the build system.

    To do a PGO build, we will need to finish the entire build first. Then there needs to be a step to run the build with certain parameters, and certain paths to the workload. Then redo part or all of the build process to do another build for a different MMTk library with the profiles.

    This would involve a lot of changes to the current build script, while it is much easier to use an external script like pgo-build.sh to drive a PGO build.

    One alternative could be that we produce a 'standard' profile (which could be generated by CI) and include the standard profile with each commit. In this case, it would be much easier and natural to integrate a PGO build with the build script.

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions