# [USE globales]Core 2 Duo

## upszot

Hola gente..

 bueno resulta que queriendo optimizar un poquito mas mi gentoo, y viendo por internet las instrucciones de mi micro http://es.wikipedia.org/wiki/Core_2_Duo

y tambien viendo un poquito aca...  *Quote:*   

> upszot@M1530 ~ $ cat /proc/cpuinfo 
> 
> model name      : Intel(R) Core(TM)2 Duo CPU     T8300  @ 2.40GHz
> 
> flags           : 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 nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm ida dts tpr_shadow vnmi flexpriority
> ...

 

Recordando mis epocas de estudio en "arquitectura de computadoras" recuerdo haber visto el tema de las instrucciones de los micros... 

 lo cual me da una idea de que si existe una USE global para cada una de estas flags (soportadas por mi micro) me conviene ponerlas, asi aprovecho dichas instrucciones...

asiq agrege en mi /etc/make.conf lo siguiente... (las que estan en HARD)

 *Quote:*   

> USE_HARD="mmx sse sse2 sse3 ssse3"
> 
> USE_NET="-ipv6 wifi ssh samba "
> 
> USE_MULTIMEDIA="dvd jpeg jpeg2k tiff gif xvid png  mp3 mpeg win32codecs pulseaudio alsa opengl "
> ...

 

Ahora la pregunta...

Hay alguna otra USE que pueda poner de acuerdo al micro q tengo para aprovechar sus instrucciones internas??

PD: Actualmente estoy en 32bit, pero pienso a futuro cambiarme a 64bit...

     digo esto, pq no se si alguna USE se vera afectada por la arquitectura... (igual estaria bueno que lo digan asi queda registrado para otra gente q ya lo tenga en 64bit..

Saludos

----------

## gringo

 *Quote:*   

> Hay alguna otra USE que pueda poner de acuerdo al micro q tengo para aprovechar sus instrucciones internas?? 

 

no que yo sepa. Otras uses que suelen ser útiles / necesarias son pic, nptl o threads

Si no tienes intención de usar distcc yo de ti simplemente usaría -march=native para el compilador.

win32codecs no está disponible para amd64, pero de cualquier manera no te hacen falta.

saluetes

----------

## upszot

Hola gringo..

 *gringo wrote:*   

>  Otras uses que suelen ser útiles / necesarias son pic, nptl o threads

 

Estuve buscando en http://www.gentoo.org/dyn/use-index.xml pero no encontre la USE global "pic" si como use de algunos paquetes... aunque no me quedo claro para que servia...

despues...

 *Quote:*   

> nptl	---->  Enable support for Native POSIX Threads Library, the new threading module (requires linux-2.6 or better usually)
> 
> threads 	---->   	Adds threads support for various packages. Usually pthreads

 

entiendo que "threads" seria para darle la posibilidad a un paquete (que lo soporte) para que corra con varios hilos de ejecución..

y por lo que vi aca.. http://www.vivalinux.com.ar/software/1837.html nptl (cito texto)  *Quote:*   

> nuevo sistema de threads (hilos de ejecución) conocido como el Native POSIX Threading Library (NPTL)

  ..

entonces que diferencia hay entre ambos?... "threads" es mas viejo??

Saludos

----------

## i92guboj

 *upszot wrote:*   

> Hola gringo..
> 
>  *gringo wrote:*    Otras uses que suelen ser útiles / necesarias son pic, nptl o threads 
> 
> Estuve buscando en http://www.gentoo.org/dyn/use-index.xml pero no encontre la USE global "pic" si como use de algunos paquetes... aunque no me quedo claro para que servia...
> ...

 

Seguramente este documento te sirva para aclarar algunas dudas con respecto a eso:

http://www.gentoo.org/proj/en/hardened/pic-internals.xml

 *Quote:*   

> 
> 
> ```
> nptl   ---->  Enable support for Native POSIX Threads Library, the new threading module (requires linux-2.6 or better usually)
> 
> ...

 

El use flag "threads" indica que el programa que soporte dicho flag se compilará con soporte para hilamiento, pero eso no tiene nada que ver con la implementación de threading que se va a usar a nivel de librerías de sistema y/o kernel, simplemente define si el programa en cuestión va a usar hilos u otro mecanismo alternativo dentro del mismo proceso principal para realizar algunas de sus tareas. La implementación de los hilos a bajo nivel no corresponde a los programas, sino a las librerías de sistema. En otras palabras, los flags "nptl" y "threads" no son comparables. La implementación anterior de threading en linux se llamaba "linuxthreads", y tenía bastante inconvenientes. Con estos datos ya puedes seguir investigando, supongo:

http://www.google.es/webhp?sourceid=chrome-instant&ie=UTF-8&ion=1&nord=1#hl=es&cp=15&gs_id=b&xhr=t&q=linuxthreads+vs+nptl&pf=p&sclient=psy&nord=1&site=webhp&source=hp&pbx=1&oq=linuxthreads+vs&aq=0L&aqi=g-L1&aql=&gs_sm=&gs_upl=&bav=on.2,or.r_gc.r_pw.&fp=e50a1b7c477e2e8b&biw=1680&bih=903&ion=1

En cualquier caso, hoy día todos los linuxes usan ya nptl.

----------

