У меня есть Intel Core i7 920 в Asus P6T, для которого моя ОС имеет 8 ядер. Core i7 - это Quad, так что, вероятно, это связано с включением Hyperthreading в BIOS. Я мог бы предположить, что HT Intel может позволить одному ядру работать на максимуме, когда другая «половина» бездействует, но не должна ли ОС сначала использовать четные / нечетные ядра?
Мой вопрос прост - учитывая, что большинство программного обеспечения может использовать в своих интересах только 1 ядро, имеет 8 псевдоядер, а не только 4 реальных ядра, фактически снижая производительность?
Пожалуйста, просветите меня, если можете.
Кстати, он работает CentOS 5.3, если это имеет значение.
performance
multi-core
NVRAM
источник
источник
Ответы:
Это не должно быть больно. Планировщик Linux знает о гиперпоточности. Гиперпоточность ничего не стоит, если на дополнительных процессорах ничего не запускается. С учетом вышесказанного, это, вероятно, не будет большим преимуществом, если вы не запускаете более четырех процессорных потоков одновременно, но это не должно повредить.
источник
Чем больше ядер, тем лучше.
Даже если большинство программных продуктов не являются многоядерными, операционная система такова, и, например, если у вас шестнадцать процессов, на каждое ядро, которое он видит, добавится два.
Единственный раз, когда я не буду использовать Hyperthreading, это если я на 100% уверен, что я не получу от этого пользы. В эпоху P4 я управлял несколькими серверами, чем Hyperthreading, и я решил использовать на них инструменты бенчмаркинга для целей, которые они запускали. и был только один, который по какой-то причине (я забыл об этом сейчас), который просто превзошел примерно на 15%, когда был выключен.
источник
у вас не 8, а 4 «псевдоядра», 4 физических + 4 виртуальных ядра = всего 8.
когда вы отключите HT, вы также можете получить Core i5, сравнить эталонные тесты между процессорами i7 и i5 (оба являются четырехъядерными Nehalems, с HT и без HT) и вы знаете ответ на свой вопрос.
источник