Hi,

After being faced with the prospect of debugging Yet Another PGO-only Bug, I 
propose that we stop testing Linux PGO builds. One of these bugs is causing 
perma-red on Aurora (bug 799295). The developer cost of figuring out how to 
reproduce, debug, and fix these problems is quite high, and even higher where a 
specific distro and compiler version might be in play. The cost is not worth 
the benefit of testing this configuration.

All evidence at Mozilla suggests that PGO is endlessly buggy, and I've heard 
this has been true historically in compilers. PGO deeply and zealously modifies 
calling conventions, function bodies, and large callgraphs, causing subtle 
problems, often topcrashes, that are difficult to reproduce and nearly 
impossible to debug. The result is that we litter the codebase with untestable 
deoptimization hints that may or may not randomly become obsolete.

This is depressing on any platform, but at least on Windows, we have a single 
compiler version to worry about (and, notably, a compiler that has PGO bugs 
even with a huge amount of resources behind its development). It is possible 
that PGO could expose real bugs. If so, we'll see the bug one way or another, 
likely in a context that is more easily reproducible and easier to debug.

So, let's turn off Linux PGO testing, free up releng resources, and save 
ourselves the inevitable pain and suffering.

-David
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to