User Tag List

Resultados 1 al 13 de 13

Tema: ¿Por qué un i7 de 6 th generación con 6 núcleos rinde mucho peor que un i5 3570k?

  1. #1

    Fecha de ingreso
    Oct 2007
    Ubicación
    Madrid
    Mensajes
    3,441
    Mencionado
    112 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    329
    Agradecer Thanks Received 
    1,183
    Thanked in
    Agradecido 586 veces en [ARG:2 UNDEFINED] posts

    ¿Por qué un i7 de 6 th generación con 6 núcleos rinde mucho peor que un i5 3570k?

    Os hago esta pregunta y luego aporto algo de información que conozco y tal vez pueda ayudar a discernir algo,

    Sucede que en el curro tengo un ordenador de torre que es un i7 de 6 th generación con 16 GB de memoria DDR4 de velocidad base, debe ser 2133 MHz o algo así.
    Con Windows 10 que se actualiza sólo y mie**** de esas.

    En casa un i5 3570k con 16 GB de RAM DDR3 a 2133 MHz, memoria virtual deshabilitada. Con Windows 7 service pack 1.

    En todas las situaciones ese i7 rinde muy por debajo de este i5; leí algo por ahí, que hubo un agujero de seguridad en los micros Intel y se parcheo por software, y el resultado
    se traducía en una pérdida de rendimiento brutal.

    ¿Se debe a esto? Porque cuando hago compilaciones cruzadas, cuando compilo desde Matlab, o ejecuto programas de Matlab, que a su vez los tengo compilados en código máquina, y algunos los programo de forma paralelizada en varios núcleos... todo es bastante peor; incluso si compilo para Atari STE con las AGT tools, en casa tardo nada y menos en compilar; en el curro tarda la de Dios...

    También en el curro el antivirus creo que va mediante enlace a servidor, ¿esto también puede afectar tanto?

    En definitiva, que funcionar funciona, pero no se acerca ni de lejos a un i5 de tercera generación, y es muy raro.

  2. #2

    Fecha de ingreso
    Sep 2006
    Ubicación
    Malaga
    Mensajes
    7,561
    Mencionado
    47 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,668
    Agradecer Thanks Received 
    1,922
    Thanked in
    Agradecido 1,289 veces en [ARG:2 UNDEFINED] posts
    Yo probaría con algo que sea solo de CPU sin tirar de discos duros o servidores para ver la diferencia de rendimiento, bájate algún programa para calcular el fractal de Mandelbrot y le pones unas coordenadas/iteracioes que tarde unos minutos a ver la diferencia.
    No es lo mismo tener diez años de experiencia, que tener un año de experiencia diez veces.


    It is an undisputed truth that the Atari ST gets the best out of coders. No dedicated hardware, just the CPU and a frame buffer! Some call it Spartan, others name it Power Without The Price, and a select few say `challenge accepted'! --- by spkr from smfx

  3. #3

    Fecha de ingreso
    Jul 2010
    Ubicación
    Octania calling
    Mensajes
    6,314
    Mencionado
    75 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,355
    Agradecer Thanks Received 
    1,037
    Thanked in
    Agradecido 713 veces en [ARG:2 UNDEFINED] posts
    La sexta y la séptima generación de intel fueron un timo, tenias que tener placa de las buenas para que tirara algo, y ni con esas, porque los i7 se calentaban DEMASIADO. Ya me he quedado contento.

  4. #4

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,558
    Mencionado
    147 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,089
    Agradecer Thanks Received 
    3,073
    Thanked in
    Agradecido 1,428 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    Algo raro hay ahi pq un i7 tiene 4 nucleos y 8 hilos por el ht y el i5 solo tiene 4 nucleos sin ht, 4 hilos; y si lo usas para compilar se usan todos los hilos disponibles... aunque fuera el i7 mas perro y el i5 mas tocho solo por la cantidad de hilos disponibles el i7 ganaria de calle.

    Mira que el i7 no este haciendo thermal throttling, vamos, que este con las temperaturas hasta arriba y para evitar daños baje la frecuencia a niveles muy bajos, dejando el rendimiento por los suelos. Puedes ver esto con Open Hardware Monitor, es gratis.

    Descartado esto, prueba el rendimiento en ambas maquinas con geekbench, ahi te mide el rendimiento de las cpus y te da un indice.


  5. #5

    Fecha de ingreso
    Sep 2009
    Ubicación
    Donde quiero
    Mensajes
    6,160
    Mencionado
    175 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    1,848
    Agradecer Thanks Received 
    2,378
    Thanked in
    Agradecido 1,309 veces en [ARG:2 UNDEFINED] posts
    Qué i7 es? 6700? 6700k? Tiene OC el Ivy Bridge? Algo tiene que haber mal, en mononúcleo andan muy cerca (misma frecuencia, algo más de IPC el i7, pero marginal), en cualquier tarea que tire del Hyperthreading, como por ejemplo Cinebench, el i7 debería aplastarlo por los 8 hilos. Pasa Cinebench o Passmark a ambos y comparte resultados.

  6. #6

    Fecha de ingreso
    Jan 2019
    Ubicación
    Alcala de Henares
    Mensajes
    607
    Mencionado
    16 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    125
    Agradecer Thanks Received 
    137
    Thanked in
    Agradecido 105 veces en [ARG:2 UNDEFINED] posts
    Cámbiale la pasta térmica y hazle delid al i7
    Surgiendo de la nada hemos llegado a alcanzar las más altas cotas de la miseria

  7. #7

    Fecha de ingreso
    Jul 2006
    Mensajes
    2,990
    Mencionado
    27 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    486
    Agradecer Thanks Received 
    264
    Thanked in
    Agradecido 197 veces en [ARG:2 UNDEFINED] posts
    Algo raro habrá porque normal no es, yo tengo un i7 4790k y de momento no pienso cambiarlo, hace poco le hice undervolt y le fijé la velocidad a 4,4Ghz y a full oscila entre 58 y 62º, de ahí no sube más, podría ponerlo a 4,7 pero entonces me sube bastante la temperatura y de momento voy bien así.
    Si el i5 tien emejor mantenimiento y está "personalizado" lo mismo hace que vaya mejor, no sé.
    Tic Tac hijo de poota

  8. #8

    Fecha de ingreso
    Oct 2007
    Ubicación
    Madrid
    Mensajes
    3,441
    Mencionado
    112 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    329
    Agradecer Thanks Received 
    1,183
    Thanked in
    Agradecido 586 veces en [ARG:2 UNDEFINED] posts
    Viendo las temperaturas, anda en torno a 38º navegando por internet; y a 52 ºC cuando le pido "chicha" a un par de núcleos (bueno, un par de hilos, como lo maneje ya es cosa suya).

    He pasado el geekbench en el i7, ahora me queda probarlo en el vetusto i5

    Eso sí, sigue compilando más lento que el otro;

    Probando con un programa en C, una interfaz de usuario, que tiene que recopilar 2000 mensajes binarios por segundo de un puerto serie, pero nativo por USB (los baudios te traen sin cuidado), no consigo que recupere 1000 mensajes ni por asomo (se queda en 900 y pico); mientras que en casa llego a alcanzar los 9000 y algo (haciendo una prueba desmedida con 10000). El programa está separado en 2 hilos, uno que lee los datos del fichero que abres al usar el COM, y otro que hace los memcpy para que cada grupo de bytes resulte ser un array de doubles, de floats, de enteros sin signo... tal y como sea el paquete a recibir.


    Editado: Si, un delid le vamos a pedir al servicio técnico de aquí; jajaja de paso les pedimos que le quiten la "tapa verdadera",
    Última edición por masteries; 29/01/2020 a las 11:14

  9. #9

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,558
    Mencionado
    147 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,089
    Agradecer Thanks Received 
    3,073
    Thanked in
    Agradecido 1,428 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    Si el programa solo tiene 2 hilos ahi esta el problema. Los i5 todos sus hilos son de nucleos dedicados, mientras que en un i7 cada hilo impar viene del HT.

    hilo 0: nucleo real
    hilo 1: ht del nucleo 0
    hilo 2: nucleo real
    hilo 3: ht del nucleo 1
    y asi.

    Lo que es posible que este pasando es que solo se usen los hilos 0 y 1 de ese i7 y claro, el ht no puede ganar nunca a un nucleo real. Solucion, especifica el processor affinity:

    https://www.windowscentral.com/assig...pps-windows-10

    Asi puedes decirle que use para esos 2 procesos que tiras los hilos 0 y 2 por ejemplo.

    Esto mismo lo note en mi i7 usando el emulador de wiiu CEMU, la wiiu tiene un procesador de 3 nucleos que se emulan en 3 hilos, pues si dejaba la affinity estandar (usando hilos 0,1,2) eso iba como el culo (uno de ellos es ht). Lo cambie a 0, 2, 4 y como la seda, mas del doble de rendimiento.

    Si alguien quiere saber pq el HT es tan 'lento': https://en.wikipedia.org/wiki/Hyper-threading

    tl;dr
    Es un diseño supersegmentado, donde 2 instrucciones se ejecutan en el mismo hardware casi en paralelo, estando cada una en una fase de ejecucion de la instruccion distinto. Esto en el mejor de los casos llevaria a poder ejecutar 2 instrucciones casi a la vez... pero... y si la ejecucion de la segunda instruccion depende del resultado de la primera???? basicamente hay que tirar todo el trabajo que se haya hecho hasta entonces en la ejecucion de la 2º y empezar desde el principio, tirando el rendimiento por los suelos.


  10. El siguiente usuario agradece a JoJo_ReloadeD este mensaje:

    Karkayu (29/01/2020)

  11. #10

    Fecha de ingreso
    Oct 2007
    Ubicación
    Madrid
    Mensajes
    3,441
    Mencionado
    112 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    329
    Agradecer Thanks Received 
    1,183
    Thanked in
    Agradecido 586 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por JoJo_ReloadeD Ver mensaje
    Si el programa solo tiene 2 hilos ahi esta el problema. Los i5 todos sus hilos son de nucleos dedicados, mientras que en un i7 cada hilo impar viene del HT.

    hilo 0: nucleo real
    hilo 1: ht del nucleo 0
    hilo 2: nucleo real
    hilo 3: ht del nucleo 1
    y asi.

    Lo que es posible que este pasando es que solo se usen los hilos 0 y 1 de ese i7 y claro, el ht no puede ganar nunca a un nucleo real. Solucion, especifica el processor affinity:

    https://www.windowscentral.com/assig...pps-windows-10

    Asi puedes decirle que use para esos 2 procesos que tiras los hilos 0 y 2 por ejemplo.

    Esto mismo lo note en mi i7 usando el emulador de wiiu CEMU, la wiiu tiene un procesador de 3 nucleos que se emulan en 3 hilos, pues si dejaba la affinity estandar (usando hilos 0,1,2) eso iba como el culo (uno de ellos es ht). Lo cambie a 0, 2, 4 y como la seda, mas del doble de rendimiento.

    Si alguien quiere saber pq el HT es tan 'lento': https://en.wikipedia.org/wiki/Hyper-threading

    tl;dr
    Es un diseño supersegmentado, donde 2 instrucciones se ejecutan en el mismo hardware casi en paralelo, estando cada una en una fase de ejecucion de la instruccion distinto. Esto en el mejor de los casos llevaria a poder ejecutar 2 instrucciones casi a la vez... pero... y si la ejecucion de la segunda instruccion depende del resultado de la primera???? basicamente hay que tirar todo el trabajo que se haya hecho hasta entonces en la ejecucion de la 2º y empezar desde el principio, tirando el rendimiento por los suelos.
    JoJo, y eso mediante programación como sería (resulto más abajo); en C. El programa, que es un compilado de Matlab, se ejecuta en la sombra (por lo que hay que hacerlo por programación). Y es para Win XP, Win 7 y 10
    Al 8 se le descarta por malo xD

    En un Pentium 4 HT, este mismo programa logra recuperar alrededor de un 30% de mensajes más que si lo pruebo mononúcleo.
    En este P4 HT logro recuperar 600 y pico mensajes por segundo en la versión de 2 hilos.

    Por otra parte, se le nota "torpón" a la máquina esta,

    ¿Lo de que compile y linke lentorrillo puede ser por eso mismo?


    Editado: Me lo he resuelto a mí mismo, indica que estas funciones sirven desde Win XP hasta Win 10

    SetThreadAffinityMask
    SetProcessAffinityMask
    Última edición por masteries; 29/01/2020 a las 14:57

  12. #11

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,558
    Mencionado
    147 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,089
    Agradecer Thanks Received 
    3,073
    Thanked in
    Agradecido 1,428 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    Cita Iniciado por masteries Ver mensaje
    JoJo, y eso mediante programación como sería; en C. El programa, que es un compilado de Matlab, se ejecuta en la sombra. Y es para Win XP, Win 7 y 10
    Al 8 se le descarta por malo xD

    ¿Lo de que compile y linke lentorrillo puede ser por eso mismo?
    Puede ser por eso perfectamente. mira, para salir de dudas y en plan rapido siempre podeis ir a la bios del i7 y desactivar el HT, asi se quedara el i7 con 4 nucleos. compara y dinos.


  13. #12

    Fecha de ingreso
    Mar 2005
    Ubicación
    Zaragoza
    Mensajes
    4,154
    Mencionado
    16 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    113
    Agradecer Thanks Received 
    241
    Thanked in
    Agradecido 165 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    11
    A lo mejor dejaron puesta mal la bios y está en el multiplicador de la CPU en su nivel más bajo y no sube... Otra idea ¿el perfil de energía de windows 10 está en equilibrado por lo menos?

    Siendo que de temperatura nos indicas que está bien, no se me ocurre nada más, aparte de la solución de afinidad de hilos de Jojo.

  14. #13

    Fecha de ingreso
    Oct 2007
    Ubicación
    Madrid
    Mensajes
    3,441
    Mencionado
    112 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    329
    Agradecer Thanks Received 
    1,183
    Thanked in
    Agradecido 586 veces en [ARG:2 UNDEFINED] posts
    Me huele muy mal ese antivirus que sólo funciona cuando está conectado a la intranet; a ver si va a analizar los ficheros que cargas en memoria, enviándolos antes por la red.

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •