# HT - 2 procesadores

## merly97

Wenas. Tengo un Intel 640 HT. 

Si le mando hacer alguna tarea muy pesada, en el monitor del sistema se ve cómo sólo va trabajando uno de los "dos" procesadores a intervalos, de forma que cuando uno está al 100% el otro está a 0%. Es normal??? Gracias por adelantado.

----------

## Palmax Maverick

Buenas!

Para que te funcionen los "dos micros" tienen que darse algunas propiedades "especiales".

Pero lo que mÃ¡s pobrable que suceda es que esa tarea pesada no se ejecute con varios hilos a la vez. El manejo de hilos es algo bastante o muy complejo dependiendo del lenguaje de implementaciÃ³n.

Por ejemplo en C hacer casi cualquier tipo de manejo de hilos es 100 veces mÃ¡s difÃ­cil con ada.

Si el cÃ³digo estuviera tirado con hilos, puede ser que estÃ© escrito en python y no tengas los pthreads en las USEs, creo que ahora threads engloba todas.

Por Ãºltimo revisa si tu nÃºcleo tiene soporte SMP <- para que soporte los 2 procesadores "lÃ³gicos".

Un saludo

Palmax Maverick

palmax at gmail.com

PD: Cuanto tiempo desde que no escribia jejeje

----------

## LinuxBlues

 *merly97 wrote:*   

> Wenas. Tengo un Intel 640 HT. 
> 
> Si le mando hacer alguna tarea muy pesada, en el monitor del sistema se ve cómo sólo va trabajando uno de los "dos" procesadores a intervalos, de forma que cuando uno está al 100% el otro está a 0%. Es normal??? Gracias por adelantado.

 

Completamente normal, aunque tengas SMP y SMT en el kernel, los HT sólo son capaces de ejecutar dos hilos si el primero de ellos deja recursos disponibles del procesador para el segundo.

Es decir, nptl te vendrá muy bien para los programas ya compilados que lo soporten, pero con GCC dudo muchísimo que tengas la segunda CPU virtual, porque se comerá toda la CPU real.

----------

## Overpeer

Pero es un problema de Linux o de los HT en si?? En Windows tambien pasa?

Un saludo.

----------

## LinuxBlues

En windows, al menos el XP, es muy difícil que ocurra dado que está compilado para i586, de ese modo cualquier hilo deja recursos disponibles del procesador para meter otro hilo. Sin embargo, si instalas GCC en windows y compilas con mingw y la CFLAG -pthreads (sólo es válida para mingw), ocurriría exactamente lo mismo.

En conclusión, es por el diseño del procesador, no depende en absoluto del sistema operativo. Échale un vistazo a Intel Dual-Core Processor Demo

----------

## Ferdy

 *Quote:*   

> es muy difícil que ocurra dado que está compilado para i586, de ese modo cualquier hilo deja recursos disponibles del procesador para meter otro hilo

 

Para nada. Te recomiendo ENCARECIDAMENTE que leas algo de literatura acerca de procesadores 'multihebra' (horrible la traducción...). Te vendrá bien para entender cómo funcionan. Pero eso que has dicho confunde más que otra cosa.

El hecho de que puedan coexistir dos hilos en un procesador HT no depende PARA NADA de las optimizaciones que uses. Si no del tipo de instrucciones y operaciones que hagan dichos hilos.

Saludos.Ferdy

----------

## LinuxBlues

 *Ferdy wrote:*   

> Te recomiendo ENCARECIDAMENTE que leas algo de literatura acerca de procesadores 'multihebra'

 

Pues dado que tanto sabes, cita fuentes y no vengas con pamplinas sin mencionar citas, el libro y su autor, ¡vamos!

----------

## Ferdy

 *Quote:*   

> Pues dado que tanto sabes, cita fuentes y no vengas con pamplinas sin mencionar citas, el libro y su autor, ¡vamos!

 

¿Pamplinas? Cuando sepas lo que estás diciendo verás quién dice las pamplinas.

Hay varios, pásate por cualquier biblioteca de una escuela de informática y échale un vistazo a libros de estructura y fundamentos de computadores. Te ayudará a darte cuenta de tu error.

Como ejemplo este que tengo en casa lo explica bastante bien sin entrar en mucho detalle y no requiere apenas conocimientos sobre computadores y organización de los mismos. Apenas conocer algo de electrónica digital y poco más:

Título: Fundamentos de los computadores.

Autor: Pedro de Miguel Anasagasti

ISBN: 84-9732-294-0

Editorial: Thompson/Paraninfo

Disfruta de la lectura y el aprendizaje.

Saludos.Ferdy

----------

## pacho2

YO saco ventaja al HT cuando corro 2 aplicaciones al mismo tiempo que consumen cerca de un 100% cada una, por ejemplo, mientra corro mathematica y lame a la vez, hago "top" y me muestra las dos CPUs en torno al 97% o así.

Saludos  :Wink: 

----------

## LinuxBlues

 *Ferdy wrote:*   

> Disfruta de la lectura y el aprendizaje.

 

Pues si me hablas de un libro del 2002, la verdad es que me siguen pareciendo pamplinas con respecto a SMT.

Mira esta cita: Also, it's rumored that the current crop of Pentium 4's actually has SMT hardware built-in, it's just disabled. (If you add this to the rumor about x86-64 support being present but disabled as well, then you can get some idea of just how cautious Intel is when it comes to introducing new features.  :Smile: 

 *pacho2 wrote:*   

> 
> 
> YO saco ventaja al HT cuando corro 2 aplicaciones al mismo tiempo que consumen cerca de un 100% cada una, por ejemplo, mientra corro mathematica y lame a la vez, hago "top" y me muestra las dos CPUs en torno al 97% o así.
> 
> 

 

¿Te importaría comentar el scheduler que usas en el kernel y de qué modo? Sin eso, es imposible utilizar un SMT de forma razonablemente """eficaz""".

----------

## Ferdy

 *Quote:*   

> Pues si me hablas de un libro del 2002, la verdad es que me siguen pareciendo pamplinas con respecto a SMT. 

 

La novena edición es de Enero de 2004. El concepto de procesadores multihebra es bastante anterior obviamente. ¿Miedo a darte cuenta de que no tienes razón? ¿ O a reconocerlo ?

Si lees y entiendes todo ese enlace que comentas ya habrás visto que no tienes razón

Saludos.Ferdy

----------

## LinuxBlues

Pero vamos a ver, algo de dominio público que hasta aparece en la wikipedia, no me parece muy razonable discutirlo...

Voy a guardarme mi opinión esta vez, porque la prudencia me aconseja hacerlo...

CITA: "Intel claims up to a 30% speed improvement compared against an otherwise identical, non-SMT Pentium 4. The performance improvement seen is very application dependent, however, and some programs actually slow down slightly when HTT is turned on. This is due to the replay system of the Pentium 4 tying up valuable execution resources, thereby starving the other thread. However, any performance degradation is unique to the Pentium 4 (due to various architectural nuances), and is not characteristic of simultaneous multithreading in general."

Vamos que sí, que el SMT es una maravilla, pero en los pentium4 es una auténtica castaña...

----------

## Ferdy

No, no es una castaña. Como ves no habla nada de 'la optimización i586'. Si es que no sabes de lo que hablas...

----------

## LinuxBlues

Ferdy me estás tocando las narices tío...

Si te has leído

 *Quote:*   

> 
> 
> Título: Fundamentos de los computadores.
> 
> Autor: Pedro de Miguel Anasagasti
> ...

 

y nos vienes bacilando con el "hacker's logo" en tu avatar, y sabes tantísimo (léase petulancia) acerca de SMT, ¿quieres explicar públicamente por qué administras gentoo-es.org con un 2.4 y sin nptl?

Editado: es un dual-alpha, por si alguien no lo sabe...

A mí se me caería la cara de   :Embarassed: 

 :Twisted Evil:   :Twisted Evil:   :Twisted Evil:   :Twisted Evil:   :Twisted Evil:   :Twisted Evil:   :Twisted Evil: 

----------

## Ferdy

 *Quote:*   

> ¿quieres explicar públicamente por qué administras gentoo-es.org con un 2.4 y sin nptl? 

 

2.6 no funciona en Alpha SMP.

Nuestra controladora SCSI no funciona en 2.6

^^^^ ¿Ves como no sabes ni por dónde te da el viento con muchas cosas de las que quieres dar lecciones?

A mi si que me daría vergüenza haber provocado la situación que acabas de provocar...

Saludos.Ferdy

Edito: Por otro lado, no tengo por qué darte explicaciones ni a ti ni a nadie.

----------

## LinuxBlues

 *Ferdy wrote:*   

> ¿Ves como no sabes ni por dónde te da el viento con muchas cosas de las que quieres dar lecciones?

 

No pretendo dar lecciones de nada, ¿de dónde has sacado esa idea? Siempre doy mi opinión, ¿piensas que debo añadir un disclaimer?

 *Ferdy wrote:*   

> Nuestra controladora SCSI no funciona en 2.6

 

 *Linus Torvalds wrote:*   

> Cuando los hombres eran hombres y creaban sus propios drivers

 

 *Ferdy wrote:*   

> 2.6 no funciona en Alpha SMP

 

Juraría que se pueden enviar bugs, pero a quién le preocupan los alpha, muy cierto   :Laughing: 

----------

## YosWinK

 *LinuxBlues wrote:*   

> 
> 
> ¿quieres explicar públicamente por qué administras gentoo-es.org con un 2.4 y sin nptl?
> 
> Editado: es un dual-alpha, por si alguien no lo sabe...
> ...

 

Siento mi intromisión por aquí. El hilo me parece un entretenido flame más, de los que aparecen de vez en cuando y tenemos la suerte (o desgracia) de disfrutar por aquí, y sólo en ocasiones, conseguir sacar algo en claro.

Me permitiré darte un consejo LinuxBlues (aún a riesgo de equivocarme, como siempre): por favor, evita tratar aquello que no conoces (en este caso, el servidor de gentoo-es) cómo un arma para usar en un flame. En esta ocasión no venía para nada a cuento y, como has podido comprobar, es totalmente contraproducente para tus intenciones.

Si realmente querías saber por qué usamos 2.4 en gentoo-es, simplemente tenías que haberme enviado un correo y te lo hubiera contado gustoso. Veo que entre tu actitud y ferdy se han encargado de dejartelo claro por una vía mucho más violenta.

A los dos: el hilo a degenerado ya lo suficiente como para dejarlo aquí. Gracias.

Un saludo.

----------

## Ferdy

[ mensaje borrado tras leer a YosWinK; que como siempre es capaz de expresarse infinitamente mejor que yo ]

----------

## LinuxBlues

 *YosWinK wrote:*   

> Me permitiré darte un consejo LinuxBlues (aún a riesgo de equivocarme, como siempre): por favor, evita tratar aquello que no conoces (en este caso, el servidor de gentoo-es) cómo un arma para usar en un flame. En esta ocasión no venía para nada a cuento y, como has podido comprobar, es totalmente contraproducente para tus intenciones.

 

Aceptado, tienes toda la razón del mundo. Lamento tomar alusiones personales como si fueran alusiones personales realmente, es una verdadera lástima que los /ignore no funcionen en los forums y esque no puedo evitar que si me atacan, ataque. Mi única arma es el sentido común y la experiencia, pero pierdo los estribos con facilidad y de ahí que las cosas acaben pareciendo flames, cosa que realmente serían, si no me tomase todo lo que se dice acerca de mí como algo personal.

Saludos YosWinK.

----------

## Ferdy

La intención NO era atacarte personalmente si no atacar lo que decías. Siento si se puede interpretar como ataques personales.

Recibid un cordial saludo ambos.

----------

## pacho2

Lo siento, pero en este campo estoy muy verde, ¿qué tipos de scheduler hay? (he mirado en la wikipedia lo que es scheduler, pero no me acaba de quedar claro  :Crying or Very sad:  )

Saludos

PD: Te juro que el HT sí se nota cuando tienes de fondo una aplicación consumiendo el 100% de la CPU y haces otras cosas, aunque el rendimiento no es como si tuvieras dos procesadores, si que es mejor a cuando no tienes el HT activado.

----------

## aj2r

A ver que os parece esto

----------

## LinuxBlues

pacho2 es algo así como el planificador de tareas, por lo que he leído, es de vital importancia para los P4-HT, make menuconfig, pulsa / y teclea sched, ya verás todas las opciones que aparecen.   :Wink: 

aj2r me parece muy interesante, aunque en ese artículo están hablando de Xeons...

Renuncia de responsabilidad: Esto es sólo mi opinión y no debe tenerse en cuenta más allá de una simple opinión, perfectamente ignorable. Como tal opinión, no pretenden ser afirmaciones transcendentales ni crear ciencia, ni nada que se le parezca.

Los pentium4 no me han convencido desde que los primeros que salieron a 1.4Ghz rendían exactamente igual que los pentium3 a 1Ghz, dado que habían reducido considerablemente el número de instrucciones por ciclo de reloj. Al parecer los de intel pensaron que lo único importante para el consumidor era la frecuencia de la CPU, sin importar lo que el procesador era capaz de hacer, y como tal, pues hicieron lo que hicieron.

El hyper-threading no me parece mal, ni estoy en contra del mismo, de hecho el SMT es una gran mejora, pero el pentium4 no ha sido nada más que el testbed de intel. De hecho estoy esperando a que los amd64 lo incorporen automáticamente, para adquirir uno: más instrucciones por ciclo de reloj que los pentium4 y 64bits junto con SMT, me parece la mejor alternativa posible, ¡ojo! me lo parece a mí, vuelvo a insistir en que sólo es mi opinión.

----------

## pacho2

Gracias por la información  :Smile: 

Estoy usando el SMT (Hyperthreading) scheduler support (la opción es "SCHED_SMT [=y]") (requiere tener activo el SMP).

Saludos  :Wink: 

PD: Yo no soy un defensor de PIV, he probado el Athlon64 (el 3200+) y estoy mucho más contento con él, lo único que digo es que si compras un PIV, a día de hoy me compraría un amd, mejor con HT a sin HT  :Wink: 

----------

