Jump to content
Read the Funtoo Newsletter: Summer 2023 ×

Should I use CPU USE Flags in make.conf?


blaz000

Recommended Posts

My CPU has these features: 

 

fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ida arat dtherm tpr_shadow vnmi flexpriority ept vpid

 

Should I enter all of them in make.conf? 

 

Most of online information include only few of them e.g. 

 

USE="mmx sse sse2"

 

Thanks

 

Link to comment
Share on other sites

In the case you  don't set  the use flags related to processor's instructions sets, the softwares you will compile will simply not take any advantage of built-in CPU hardware support for some of their operations.  However not all packages but multimedia stuff (typical case) make use of enhanced processor instructions. If you want to check what package use what flag equery h will tell:

# equery h mmx
 * Searching for USE flag mmx ... 
[IP-] [  ] media-libs/smpeg-0.4.4-r10:0
[IP-] [  ] media-sound/lame-3.99.5-r1:0
[IP-] [  ] media-video/mjpegtools-2.1.0-r2:1

To answer your question: you SHOULD enable support for CPU's enhanced instructions, unless you have a good reason to leave it disabled (i.e. known bug, strange crash....)

 

However to bring a bit of nuance: a use flag is simply a handle given to you by an ebuild developer to enable/disable some features at compilation time, not having a use flag in a ebuild is not a warranty that the software will not include some CPU special instructions in its binary code.

Link to comment
Share on other sites

  • 5 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...