Hello, On Sun, 27 Apr 2014 07:34:05 +0700 C. Bergström wrote: [...] > Not to be a smart-ass, but will someone start a thread on global > PGO (profile guided optimizations) next? imho it would be > interesting and great to have some general training data already > contributed next to the ebuilds. For the science stuff I wouldn't > recommend it, but who knows..
Global PGO is meaningless, because PGO requires not just compiler flags, but package-specific tests covering all widely used profiles for package in question. So this requires intensive upstream work and in no way can be done in Gentoo for any significant number of packages. At this moment only two packages in tree support PGO: dev-libs/gmp and www-client/firefox. For gmp it works great. For firefox it is a menace: 1) with current in-tree firefox versions PGO can't be used on x86 at all, since linker doesn't fit in 3GB memory limit, even with memory-constraint options, both GNU ld and gold. 2) on amd64 4GB is surely not enough for linking of profile-enabled version, so I can't use it here too. 3) Old firefox versions (somewhere around 18) were successfully compiled on the same ~x86 and ~amd64 boxes. So something in firefox tree changed that much. There is also sci-libs/atlas in the science overlay which uses similar technique during build. But strictly speaking this is not PGO, as changes are made on algorithm level rather than on compiler's one: it test each block with different parameters and choses the fastest ones for current box. Best regards, Andrew Savchenko
pgp5UXcRvqgJp.pgp
Description: PGP signature