XSIforum.com

hyperthreating

0 Usuarios y 1 Visitante están viendo este tema.

Ownage

  • ***
  • 1494
  • cause we are living in a 3d world
hyperthreating
« en: 15 Febrero 2014, 20:16:26 »
Alguen me podria aclarar que es y como afecta a mi trabajo el hyperthreating??

por lo que se hace que ciertos procesadores intel dupliquen el numero de cores, pero que programas lo soportan??
como se que esta activado?? como se que pocesadores pueden soportarlo??

Re:hyperthreating
« Respuesta #1 en: 16 Febrero 2014, 00:51:04 »
Es la tecnología de Intel para mejorar el paralelismo en sus procesadores (2 unidades lógicas por cada unidad física), tiene que ver con que a nivel de cpu las instrucciones se ejecutan en hilos/threads de forma paralela (cuando no son dependientes entre si) mejorando el rendimiento global.

Hay casos concretos en que los programas pueden tomar control sobre como se ejecutan sobrescribiendo el comportamiento por defecto según conveniencia, por ejemplo es bastante común que se procese la interfaz gráfica en un hilo mientras hacen otro tipo de trabajo 'de fondo' y así no se bloquea el sistema a la mínima, o por ejemplo los renderers suelen calcular distintas partes de la imagen en distintos hilos... cosas asi.

Como usuario no es mucho lo que puedes hacer, es algo a nivel de hardware y no tendrías que preocuparte de ello :)

Ownage

  • ***
  • 1494
  • cause we are living in a 3d world
Re:hyperthreating
« Respuesta #2 en: 16 Febrero 2014, 00:57:22 »
asi que en el windows task manager si tengo un i7 no deberian aparecer 14 nucleos no?? solo que a la hora de calular el render "simulatia" que habria 14?

Re:hyperthreating
« Respuesta #3 en: 16 Febrero 2014, 01:07:05 »
No, esto va a bajo nivel, rollo hardware/bios y tal... el hyper threading 'engaña' al sistema operativo virtualizando 2 threads/hilos por cada core. Es la forma en que está montado el hardware en si, no es algo a nivel de software que puedas aumentar/disminuir.
En wikipedia puedes encontrar una definición formal... pero vamos, es más o menos lo que te he dicho.

tl;dr: Quad Core + HT -> 4 procesadores físicos que gracias al HT se traducen en 8 hilos/thread para el sistema.
« Última modificación: 16 Febrero 2014, 01:16:33 por Cesar Saez »

eduardito

  • *****
  • 3064
  • hola holita
Re:hyperthreating
« Respuesta #4 en: 16 Febrero 2014, 12:57:17 »
Es un engañabobos,4 cores fisicos dan lo que dan, por mucho hyperthteading tenga.

Re:hyperthreating
« Respuesta #5 en: 17 Febrero 2014, 20:32:18 »
Es un engañabobos,4 cores fisicos dan lo que dan, por mucho hyperthteading tenga.

Me ha hecho gracia el tono de la respuesta.. pero tiene mucha razon.
Mi última prueba, hecha con Mitsuba y usando el HT:
Código: [Seleccionar]
2014-02-17 20:19:05 INFO  rend [SamplingIntegrator] Starting render job (640x480, 64 samples, 4 cores, SSE2 enabled) ..
2014-02-17 20:20:44 DEBUG rend [HDRFilm] Developing film ..
2014-02-17 20:20:44 INFO  rend [HDRFilm] Writing image to "H:\pyshader\modes\Mitsuba/resources\matpreview.exr" ..
2014-02-17 20:20:44 DEBUG rend [Bitmap] Writing a 640x480 OpenEXR file
2014-02-17 20:20:44 INFO  rend [RenderQueue] Render time: 1.6517m
2014-02-17 20:20:44 DEBUG rend [Thread] Thread "rend" has finished
2014-02-17 20:21:43 DEBUG wrk1 [Thread] Thread "wrk1" has finished
2014-02-17 20:21:43 DEBUG wrk0 [Thread] Thread "wrk0" has finished
2014-02-17 20:21:43 DEBUG wrk2 [Thread] Thread "wrk2" has finished
2014-02-17 20:21:43 DEBUG wrk3 [Thread] Thread "wrk3" has finished
2014-02-17 20:21:43 DEBUG main [Thread] Spawning thread "wrk0"
2014-02-17 20:21:43 DEBUG main [Thread] Spawning thread "wrk1"
2014-02-17 20:21:46 DEBUG main [Thread] Spawning thread "rend"
2014-02-17 20:21:46 INFO  rend [SamplingIntegrator] Starting render job (640x480, 64 samples, 2 cores, SSE2 enabled) ..
2014-02-17 20:23:25 DEBUG rend [HDRFilm] Developing film ..
2014-02-17 20:23:25 INFO  rend [HDRFilm] Writing image to "H:\pyshader\modes\Mitsuba/resources\matpreview.exr" ..
2014-02-17 20:23:25 DEBUG rend [Bitmap] Writing a 640x480 OpenEXR file
2014-02-17 20:23:25 INFO  rend [RenderQueue] Render time: 1.6429m

Mi pc es un Core2 Duo, osea, tiene 2 procesadores.
Como vereis, con 4 threads, incluso ha tardado unos segundos más, supongo que los que ha necesitado para lanzar 2 'hilos' extra..:)

Saludos..

Ownage

  • ***
  • 1494
  • cause we are living in a 3d world
Re:hyperthreating
« Respuesta #6 en: 18 Febrero 2014, 13:20:54 »
eso si que escuche... que para renders y estas cosas era mejor un dual core quad que un i5 puede que sea por esto?? que el dual core quad tiene 4 cores y el i 5 2 + 2 simulados¿

Re:hyperthreating
« Respuesta #7 en: 18 Febrero 2014, 19:33:06 »
Apostaria a que es eso.. donde este un 'core' fisico siempre sera más potente, creo yo.

Re:hyperthreating
« Respuesta #8 en: 18 Febrero 2014, 20:16:49 »
eso si que escuche... que para renders y estas cosas era mejor un dual core quad que un i5 puede que sea por esto?? que el dual core quad tiene 4 cores y el i 5 2 + 2 simulados¿
Que yo sepa no existe/se-usa el término dual core quad... el nombre va en relación al número de cores y suele ser bastante explícito (dual=2, quad=4, hexa=6, octo=8).
La diferencia entre un dual core y un quad core pasa por el numero de cores y no por la eficiencia del HT (que por cierto, viene incluido en ambos procesadores).

Dicho esto, hay que recalcar que un quad core con HT no es ni de coña equivalente a un octa core sin HT (o un dual+HT a un quad), se estima que cada thread adicional es equivalentes a un 15~20% de un thread "real" (lo que es una mejora sustancial pero no hay que dejarse engañar por el monitor de recursos del SO).
« Última modificación: 18 Febrero 2014, 20:23:48 por Cesar Saez »

Ownage

  • ***
  • 1494
  • cause we are living in a 3d world
Re:hyperthreating
« Respuesta #9 en: 18 Febrero 2014, 22:52:30 »
http://ark.intel.com/products/75122

http://ark.intel.com/products/65509

entonces.. la diferencia entre este i7 y el i5 es simplemente que los dos tienen 4 cores pero al i7  le permiten hiperthreat y solo gana un 15-20% mas????