Profile Guided Optimization is a method of supplying the compiler with data about common flows which should be optimized.
Questions tagged [pgo]
47 questions
1
vote
1 answer
LBR for large programs
The Last Branch Record feature in Intel processors. Are they suitable for large programs that have a lot of branching? If yes how do you manage to find the entire path by just using 16 MSR registers incase of Haswell?

Questioner
- 41
- 4
1
vote
2 answers
Visual Studio: use the results of Profile Guided Optimization from one exe to a different dll?
I have a dll, call it core.dll which I want to optimize using Visual Studio's excellent Profile Guided Optimization. Most of the code is the dll actually compiles into a library called core.lib which is then wrapped by core.dll.
To unit-test this…

shoosh
- 76,898
- 55
- 205
- 325
0
votes
0 answers
/USEPROFILE command isn't giving PGO logs
Trying to create an optimized executable after creating an instrumented build using /GL,/LTCG and /FASTGENPROFILE and /USEPROFILE
I'm trying to create an optimized executable after creating an instrumented build usinf /GL,/LTCG and /FASTGENPROFILE.…

Fayas Mohamed
- 11
- 1
0
votes
2 answers
Why Velero and minion backup restore not working for PGO cluster?
I have set up Minio and Velero backup for my k8s cluster. Everything works fine as I can take backups and I can see them in Minio. I have a PGO operator cluster hippo running with load balancer service. When I restore a backup via Velero, everything…

tauqeerahmad24
- 358
- 8
0
votes
1 answer
How to fix k8s PGO operator network issue and crash loop-back?
I am trying to install PGO operator by following this Docs. When I run this command
kubectl apply --server-side -k kustomize/install/default
my Pod run and soon it hit to crash loop back.
What I have done
I check the logs of Pods with this…

tauqeerahmad24
- 358
- 8
0
votes
0 answers
crunchy data pgo backrest in pending state in Kubernetes
I'm deploying pgo in Kubernetes by following this link:
https://access.crunchydata.com/documentation/postgres-operator/latest/quickstart/
after trying it on minikube successfully.
After running the command
pgo create cluster -n pgo hippo
kubectl get…

pado
- 123
- 1
- 11
0
votes
1 answer
how to use nfs storage in crunchydata postgres operator
I am trying out the CrunchyData postgres-operator(Helm) with the NFS Helm chart. And I am unable to create the Cluster with NFS. The following configuration is performed:
Installed NFS helm chart Repo
helm install nfs-abc…

Ravindra Gupta
- 1,256
- 12
- 42
0
votes
1 answer
Cannot open file 'pgort.llib' after adding /GENPROFILE flag
I'm trying to follow the instructions here to add PGO for my project. After I added the /GENPROFILE flag, I start getting the link error:
LINK : fatal error LNK1104: cannot open file 'pgort.lib'
After debugging it a bit, I believe the problem is…

Nick Banks
- 4,298
- 5
- 39
- 65
0
votes
1 answer
Are the PGO (Profile Guided Optimization) tools available in Visual Studio 2019 Community Edition?
According to this demo there should be an extra context-menu item when right-clicking on a project with sub-options "Instrument", "Update", "Optimize" and "Run".
In the Community edition I do not see these options.
Is there a specific option I…

Louis Somers
- 2,560
- 3
- 27
- 57
0
votes
0 answers
Visual Studio ignoring CMake linker flags for profile guided optimization
I have a C++ project which uses CMake as its build system in Visual Studio 2017 Enterprise. According to the documentation, I have to link using /LTCG and /GENPROFILE. In CMake, this seems to equate to setting the variable…

BullyWiiPlaza
- 17,329
- 10
- 113
- 185
0
votes
0 answers
Why using /USEPROFILE is far slower than using /GENPROFILE in VS2015?
As we know, we should build project first with /GENPROFILE and run it for training, and then switch the command to /USEPROFILE to build the optimized bundle.
I have printed the time of each time-costing function and I found that it is more faster…

user3126461
- 152
- 8
0
votes
1 answer
Clang: do I have to pass -O0 when compiling with coverage for PGO
So I am compiling a big C++ program with clang 3.8.
I want to make use of PGO (Profile guided optimization). I want to use the way of compiling in instrumentation to generate the profile.
Currently I am passing -fprofile-instr-generate --coverage…

TheWatcher
- 167
- 2
- 11
0
votes
1 answer
How to profile a program with llvm tools with llvm 3.5 or greater?
I am looking into using llvm tools to generate block level profile of small programs. It looks like in older versions this was as simple as running:
perl utils/profile.pl -block program.bc
How is profiling done in newer versions of LLVM?

Lincoln
- 1,008
- 12
- 20
0
votes
1 answer
How are PGOs applied to the source code? How does it affects the CFG?
Recently I've been searching for PGO's related topic, and started wondering how they are applied to the source code and one application effects after another is already applied.
I mean, if you enable PGO optimization in GCC or CLang, for example, it…

yZaph
- 169
- 1
- 10
0
votes
2 answers
How can a GCC instrumented executable be faster than the non-instrumented?
I'm benchmarking the overhead of GCC Profile-Guided Optimization on the SPEC benchmarks. I have some weird results with some benchmarks. Indeed, two of my benchmarks are running faster when instrumented.
The normal executable is compiled with: -g…

Baptiste Wicht
- 7,472
- 7
- 45
- 110