Go PGO docs mentions some support for the external profile tooling and has a reference to the external page about supported PGO tools. Having support for the external profiling tooling is important since some organizations already have their profiling infrastructure (GWP in Google, Perforator in Yandex, sometimes even Grafana Pyroscope or similar in-house solutions).
The official documentation explicitly mentions widely used Linux' perf profiles for PGO purposes. Using these profiles are common thing in the C++ world due to sampling PGO support with AutoFDO tooling.
pprof package has a reference to a converter from Linux perf profiles to pprof profiles - https://github.com/google/perf_data_converter . Did anyone try to test it with Go PGO? Is it possible with this tool to use perf profiles to enable PGO optimization with the current PGO infrastructure in the Go compiler?
If it works, I suggest adding a mention about perf_data_converter to the https://github.com/golang/go/wiki/PGO-Tools page. Having a possibility to use Linux' perf profiles can be important since it allows users to implement company-wide PGO optimization pipelines in the same way as it's done for C++ infrastructure (infrastructure and tooling reusage, you know).
Go PGO docs mentions some support for the external profile tooling and has a reference to the external page about supported PGO tools. Having support for the external profiling tooling is important since some organizations already have their profiling infrastructure (GWP in Google, Perforator in Yandex, sometimes even Grafana Pyroscope or similar in-house solutions).
The official documentation explicitly mentions widely used Linux'
perfprofiles for PGO purposes. Using these profiles are common thing in the C++ world due to sampling PGO support with AutoFDO tooling.pprofpackage has a reference to a converter from Linuxperfprofiles topprofprofiles - https://github.com/google/perf_data_converter . Did anyone try to test it with Go PGO? Is it possible with this tool to useperfprofiles to enable PGO optimization with the current PGO infrastructure in the Go compiler?If it works, I suggest adding a mention about
perf_data_converterto the https://github.com/golang/go/wiki/PGO-Tools page. Having a possibility to use Linux'perfprofiles can be important since it allows users to implement company-wide PGO optimization pipelines in the same way as it's done for C++ infrastructure (infrastructure and tooling reusage, you know).