On optimizing Theora

Benjamin M. Schwartz bmschwar at fas.harvard.edu
Sun Feb 22 14:29:52 EST 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Tiago Marques wrote:
> Can you please try both options with also the following
> ones:*-ftree-vectorize -funroll-loops -m3dnow

(1) libtheora automatically adds the flags "-O3 -fforce-addr
- -fomit-frame-pointer -finline-functions -funroll-loops" to any specified
CFLAGS.

(2) libtheora's inner loops are largely hand-optimized MMX assembly, so
vectorization and 3dnow are unlikely to have a significant impact.

(3) I am not particularly interested in trolling through every combination
of relevant gcc flags in search of performance benefit.  That's the
compiler's (and compiler writers') job.  My point, instead, was that gcc
(at least the version in 767) does not have a good code generator for
Geode, and therefore we should not expect any performance increase by
rebuilding everything -march=geode.

If you are interested in searching for the perfect compiler flags, perhaps
you would like to try Acovea (http://www.coyotegulch.com/products/acovea/).

- --Ben
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAkmhp7AACgkQUJT6e6HFtqRt4wCgl4CpYwb3OqlxUfwkgVvuMsk6
UcYAoJ54o4Oyhgl056lF6HQbbtf245O2
=dFCy
-----END PGP SIGNATURE-----



More information about the Devel mailing list