From: "Rick \"Zero_Chaos\" Farina" <zerochaos@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] New global use flags: 3dnowext, mmxext, ssse3, sse4_1, avx, avx2
Date: Mon, 16 Dec 2013 18:07:42 -0500 [thread overview]
Message-ID: <52AF87BE.8000304@gentoo.org> (raw)
In-Reply-To: <201312160120.03185.dilfridge@gentoo.org>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 12/15/2013 07:20 PM, Andreas K. Huettel wrote:
> Am Montag, 16. Dezember 2013, 00:34:13 schrieb Matt Turner:
>> 3dnow: Use the 3DNow! instruction set
>> 3dnowext: Use the Enhanced 3DNow! instruction set
>> mmx: Use the MMX instruction set
>> mmxext: Use the Extended MMX instruction set (intersection of Enhanced
>> 3DNow! and SSE instruction sets) (3dnowext or sse in cpuinfo)
>> sse: Use the SSE instruction set
>> sse2: Use the SSE2 instruction set
>> sse3: Use the SSE3 instruction set (pni in cpuinfo)
>> ssse3: Use the SSSE3 instruction set
>> sse4_1: Use the SSE 4.1 instruction set
>> avx: Use the AVX instruction set
>> avx2: Use the AVX2 instruction set
>
> What's the point of these flags?
> (or to be more precise, are they really justified whenever they are used?)
>
> Usually the set of cpu instructions should be controlled by your CFLAGS, and
> I've been actively patching packages (that do not do manually coded assembly)
> to make such flags unnecessary.
>
I think this is a great time to point out three things:
TL;DR Some packages are sensitive, easier for binpkgs in certain cases,
broken build systems may require it.
1.) Some packages have really sensitive cflags (mostly these packages
offer USE=custom-cflags). Packages such as app-crypt/johntheripper
offer a bunch of cflag options for optimization of supported cpu
features while not actually using the user's full cflags which would
yield poor optimization or broken code. I can't say I'm in love with
this situation, but facts are facts, and turning on USE=custom-cflags
seems to inevitably yield significantly slower benchmarks in the case of
jtr while the use flags work well.
2.) Gentoo supports binary packages. In the case of apps like
johntheripper (and a few other crackers who wish to remain nameless)
these use flags are really helpful for the users as portage can
automatically know it should rebuild the package for higher optimization
or w/e.
3.) Broken build systems. Forgive me for the term, but packages like
libpng seem to require arcane configure flags like
"--enable-arm-neon=$(usex neon on off)" to enable my neon fpu despite
passing -mfpu=neon. Retarded? Probably. Fact? Definitely.
Thanks,
Zero
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
iQIcBAEBAgAGBQJSr4e+AAoJEKXdFCfdEflK9TkQAJ0AnIQMcvDKwo/WWLmsoZHh
B5WD1WrXwTl2xkwBs64lRBw4tFl1zU14zHvFmC3T4rPd6aEA2J7DNiYAnztGGTNu
RWeUWYL3Qs+RJ4jASssJrMQmc3aEHEEzqMBE/yFL+x3ioeTilrROq+P1UlwoyUBh
6wJtkFiuTE7/DeqxhSaE81JvPVxRVt/i0nJoTvN6Kd4WLOzHZejekANErXaDF9FA
MFXLI9OpQ4lY5QrZMJ7msSZJA0DnGt9Hi16QHtaaDQ0MPlJmtoVJlulsc14QgCCk
a73+ndo20apOqAUOTy1cxXGxbrnU4TcDB16e/Sfc4eqAWiDEugXT6NTH+hnTegQ5
qE3N6genNGvRTTchVmNemnSs90UPTFhKhC5fqOo7hyqokpK3mvbU+tKL4NoOKjIQ
LyoaghSRfzFcQhpRaEGhviGnm+Mvs9wSglBonob4PShrlcB2mpoZicA7oPuaE6Wi
UC52KoryvsXtVxe5djziwd/1kgaC60wF1LnJ9s0BzxSoWMyibuD7wv5+hI5G9sQf
0zg/uzGlFVrMKjwCFz0Vr4STDRVAIULeKlbfMACzOE1jUGw5TXLjdWq+yMCTN0eH
jqYo15IkPEC/a9+P+3fMVOL+7ZvQj5neoqSn1d0dEqo3y5d8Z1lZIw/ZYosWWObd
qr08PGwWw+fElOa5BnSj
=hhoR
-----END PGP SIGNATURE-----
next prev parent reply other threads:[~2013-12-18 4:24 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-15 23:34 [gentoo-dev] New global use flags: 3dnowext, mmxext, ssse3, sse4_1, avx, avx2 Matt Turner
2013-12-16 0:20 ` Andreas K. Huettel
2013-12-16 0:30 ` Matt Turner
2013-12-16 1:13 ` Francesco R.
2013-12-16 12:07 ` Jeroen Roovers
2013-12-16 23:07 ` Rick "Zero_Chaos" Farina [this message]
2013-12-18 17:48 ` Jeroen Roovers
2013-12-16 10:44 ` [gentoo-dev] " Duncan
2013-12-16 15:38 ` Michael Orlitzky
2013-12-16 18:21 ` Alan McKinnon
2013-12-16 20:17 ` Michael Orlitzky
2013-12-16 20:48 ` Alan McKinnon
2013-12-18 18:49 ` Matt Turner
2013-12-19 12:11 ` [gentoo-dev] " Jan Matejka
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52AF87BE.8000304@gentoo.org \
--to=zerochaos@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox