| Страница:
1 2 3 4
|
|
Введение
Intel впервые использовала термин Hyper-Threading при объявлении процессора Pentium 4 "Northwood" на частоте 3,06 ГГц и Xeon MP "Foster" в 2002 году. Эта технология является проприетарной для Intel, основная цель заключается в улучшении использования процессора через увеличение параллельной нагрузки. У последнего процессора Core i7-980X с шестью физическими ядрами технология Hyper-Threading удваивает количество ядер до 12 виртуальных ядер на настольных ПК.
В результате возникает вопрос: может ли программное обеспечение получить преимущество от более чем восьми потоков? Как технология Hyper-Threading сказывается на эффективности энергопотребления? И не имеет ли больше смысла придерживаться шести физических ядер вместо того, чтобы рисковать распределением потоков многопоточных приложений на виртуальные ядра?
Нажмите на картинку для увеличения.
Процессор Intel Gulftown (Intel Core i9-980X Extreme) поддерживает технологию Hyper-Threading, обеспечивая 12 виртуальных ядер. Однако преимущество по производительности мы обнаружили лишь в немногих специфических приложениях.
История Hyper-Threading
Позвольте нам начать с того, что объявление Hyper-Threading было фактически необходимым: поскольку у процессоров поколения Pentium 4 использовался очень длинный конвейер, было очень важно увеличивать тактовые частоты, чтобы сохранять конвейер постоянно занятым. По этой причине Intel продублировала блоки, которые хранят архитектурное состояние, в результате чего ядро процессора с поддержкой Hyper-Threading выглядело для операционной системы как два логических ядра. Планировщик мог одновременно распределять на выполнение два потока или процесса, и если система предсказания ветвлений Intel работала хорошо, это гарантировало эффективную загрузку и выполнение инструкций.
Преимущества для Pentium 4 заключались, в основном, в повышенной отзывчивости системы на одноядерных процессорах и небольшом приросте производительности в некоторых приложениях. Впрочем, это касается настольных ПК. В серверах, где параллельное выполнение давно стало ключевой особенностью, технология Hyper-Threading показала себя намного лучше.
С появлением процессоров Core 2 технология Hyper-Threading исчезла, но Intel решила вернуть её с архитектурой Nehalem, которая является основой для всех современных процессоров Core i7, i5 и i3 - включая только что объявленный 6-ядерный Core i7-980X.
Впрочем, ситуация сегодня совсем иная. AMD сегодня уже не может давить на Intel в производительном сегменте, да и технология Hyper-Threading превратилась в приятный бонус, различающий разные линейки процессоров, чем в обязательную для реализации новинку. Действительно, есть ли смысл в Hyper-Threading, когда процессор и так имеет шесть физических ядер?
Мы решили сравнить четырёхъядерный Core i7-975 и новый шестиядерный Core i7-980X, оценить производительность процессоров и эффективность энергопотребления с нашими обновлёнными тестами.
Как работает Hyper-Threading
Если у Pentium III длина конвейера составляла 10 ступеней, то у процессора Pentium 4 она была увеличена до 20 ступеней у ядер Willamette (180 нм) и Northwood (130 нм). У последующего ядра Prescott (90 нм) длина конвейера увеличилась до 31 ступени. И последние процессоры на архитектуре NetBurst, а именно 65-нм Cedar Mill, сохраняли данную структуру конвейера.
Базовая идея конвейера заключается в том, чтобы разбить выполнение на независимые ступени, а добавление ступеней в конвейер приводит к более высокой производительности выполнения программ, особенно на высоких тактовых частотах. Однако если конвейер частично пустой, или он заполнен ошибочными инструкциями (из-за неверных предсказаний ветвления, например), то мы получим падение производительности. Самым важным фактором является как раз ветвление в программах, когда блок предсказания ветвления CPU пытается "угадать" ту или иную ветвь кода, чтобы заранее загрузить все нужные инструкции.
Длинные конвейеры Prescott и Cedar Mill из 31 ступени очень сильно зависели от эффективной рабочей загрузки. Поэтому Intel добавила так называемый блок переигрывания/replay, который позволял процессору прерывать операции, ошибочные отправленные на выполнение, и повторно выполнять их, когда будут соблюдены должные условия выполнения.
Все процессоры Core i7 и большинство моделей Core i5 для верхнего сегмента массового рынка поддерживают Hyper-Threading. Нажмите на картинку для увеличения.
Сегодня блок Hyper-Threading позволяет физическому ядру выглядеть как два логических. Причём технически возможно реализовать Hyper-Threading с большим количеством логических блоков. Если ресурсы выполнения не загружены текущей задачей, то планировщик процессора может выполнить ещё какие-либо задачи, чтобы повысить эффективность выполнения или предотвратить простой конвейера из-за неверного предсказания ветвлений, промахов кэша или других причин.
Всё, что нужно для Hyper-Threading - поддержка SMP (symmetrical multi processing) в вашей платформе и операционной системе. Впрочем, таковая поддержка стала обязательной ещё во времена Windows NT.
В прошлом мы видели, как технология Hyper-Threading обеспечивает дополнительную производительность, но также сказывается и на энергопотреблении. Приложения с интенсивной многопоточной нагрузкой обычно могут выигрывать от нескольких виртуальных ядер и одновременного выполнения нескольких потоков. В отличие от обычных программ, которые в той или иной степени оптимизированы под использование нескольких ядер.
Программы, оптимизированные под многопоточность
Intel предоставила список программ, оптимизированных под многопоточность. Мы знакомы со многими программами (если не с большей частью списка), но мы не проверяли детально, сколько потоков могут использовать эти программы. Помните, что список предоставлен Intel, и он перечисляет любые приложения, которые могут выиграть от многопоточности. Мы отметили программы, присутствующие в нашем тестовом пакете звёздочкой. Игры мы не стали включать, поскольку преимущество от множества ядер будет видно только в случае поддержки ускорения физики или сложной системы просчёта искусственного интеллекта. Подавляющее большинство современных игр получат больший прирост от установки быстрой видеокарты, чем от перехода на 4 или 6 вычислительных ядер, не говоря уже о 12 потоках.
Игры, игровые движки и прочие движки
- Activision Ghostbusters
- Capcom Lost Planet Colonies
- Capcom Resident Evil 5
- CJ Internet Prius Online
- Codemasters GRID (with patch)
- Codemasters Operation Flashpoint: Dragon Rising
- Crytek Crysis Warhead (Windows XP only)
- EA Need for Speed: SHIFT
- Havok SDK v5.5 (Tool / Middleware)
- Illuminate Labs Beast 5 (Tool/Middleware)
- Geomerics Enlighten
- Kingsoft Mission Against Terror
- Kingsoft JX Online III
- NC Soft Aion
- NC Soft Lineage II
- Neowiz Alliance of Valiant Arms
- Sega Football Manager 2009
- Sega Football Manager 2010
- Sega Empire: Total War (with patch)
- Simul Software Ltd Simul Weather (Middleware)
- THQ Relic Company of Heroes
- Trinigy Vision Engine v7 (Middleware)
- Ubisoft Assassin’s Creed
- Ubisoft Far Cry 2 (with patch)
- Ubisoft HAWK
- Ubisoft World in Conflict: Soviet Assault
- Winking Sakura
Приложения мультимедиа и продуктивности
- Abbyy Fine Reader
- Adobe After Effects
- Adobe Photoshop *
- Adobe Photoshop Lightroom
- Adobe Premiere Pro
- Arcsoft Total Media Showbiz DVD
- AutoDesk 3ds Max *
- Autodesk Maya
- Avid Pinnacle Studio
- Bibble Labs Bibble
- Blender
- Cakewalk Sonar Producer
- Cineform Prospect HD
- Corel DVD Factory in Digital Studio
- Corel Video Studio
- Cyberlink MediaShow & MediaShow Espresso
- Cyberlink Power Director
- Cyberlink Power Producer
- HandBrake *
- Ichikawa Soft Laboratory SILKYPIX
- Kolor Autopano Pro & Giga
- Magix Video Deluxe / Movie Edit Pro
- Main Concept Reference Encoder and Decoder *
- Maxon Cinema 4D & Cinebench *
- Microsoft Excel
- Microsoft Expressions Encoder
- Microsoft Windows Live Movie Maker
- Movavi Video Converter
- Nero Multimedia Suite
- Newtek Lightwave
- Nik Software Silver Efex Pro
- On2 Technology True Motion VP8
- Pegasys TMPEGEnc Xpress
- Persistence of Vision Raytracer
- Photodex Proshow Gold
- RARLAB WinRAR*
- Sonic Roxio Creator
- Sonic Solutions Cineplayer
- Sony ACID Music Studio
- Sony Sound Forge Audio Studio
- Sony Sound Forge Pro
- Sony Vegas Pro
- Sony Acid Pro
- Sorenson Media Squeeze
- Steinberg Cubase
- Steinberg Nuendo
- VirtualDub w/Divx
- XtraSens Retina
- 3ivx MPEG-4
Конечно, список не претендует на абсолютный охват: мы обнаружили, что Intel не указала в нём утилиту 7-Zip, которую мы добавили в наш тестовый набор из-за её великолепной эффективности в многопоточном окружении.
Страница:
1 2 3 4
|