Как стать автором
Обновить

Как работает первый гибридный процессор x86

Время на прочтение5 мин
Количество просмотров18K
Всего голосов 22: ↑20 и ↓2+18
Комментарии37

Комментарии 37

НЛО прилетело и опубликовало эту надпись здесь
Озвученный вопрос тоже интересует. Но на примере одного потока и TurboBoost — никак не понимают, тупят, размазывая поток по всем ядрам, по крайней мере Windows.
Возможно, это не баг, а фича. Частое переключение нагрузки между ядрами позволяет не перегревать одно ядро, размазывая тепловыделение по всем и давая возможность системе охлаждения эффективнее утилизировать накапливающееся тепло. Конечно, производительность от этого страдает. Но никто не мешает привязать ресурсоёмкий процесс к определённым ядрам.

Вероятно, с распространением гибридных процессоров ОС станут уделять больше внимания оптимизации распределения нагрузки по ядрам в зависимости от их особенностей.
Температура тоже включена в оценку TurboBoost, грубо говоря — это забота процессора следить за своей температурой. У меня она даже под самой жестокой нагрузкой не поднимается выше 60C, т.к. TDP системы охлаждения в два раза выше TDP процессора, «оверкилл», зато тихо.
В ручную переключать — тоже не всегда (почти никогда) вариант, т.к. бывают приложения которые то в несколько потоков считают, то в один, или постоянно запускают фоновые однопоточные процессы — тоже обновление системы, например.
Автоматизировать динамическое переключение нагрузки чужого приложения по ядрам довольно несложно, ЕМНИП в Windows есть что-то вроде API.
60℃ не слишком много, но если какое-то одно ядро будет постоянно горячее остальных, кроме возможного уплывания его характеристик ещё и создаются нагрузки на кристалле, связанные с тепловым расширением. И ещё при наличии теплораспределительной крышки термопаста может деградировать локально над ядром.
Насколько быстро меняется температура ядер и других блоков процессора в зависимости от нагрузки хорошо видно
на этом видео:
Писать свой планировщик — то ещё приключение, в том то и вопрос что хотелось бы иметь уже в ОС такой. Ну и использовать постоянно одно ядро — тоже не обязательно, можно вполне его переключать, но реже, раз в несколько секунд, например. Иначе получается: «У меня для Вас есть посылка отличная частота с TurboBoost, только я Вам её не отдам ...»
Ну пользователю может быть виднее, чем ОС, что за специфическое приложение он запустил и как правильнее распределять под него ядра. Но, конечно, ОС как-то должна научиться различать специфические ядра и научится все этим хозяйством рулить. Вероятно, какую-то информацию о специфике процессора должен предоставлять драйвер.
Я и привел пример что ОС даже свои процессы не может распределить оптимально. Специфика возможной реализации уже выходит за рамки первоначального вопроса.
это все давно есть, сейчас в многоядерных процессорах некоторые ядра тупо лучше остальных. ос умеет нагружать именно их
Отвечу сам себе: Turbo Boost Max Technology 3.0 — походу и есть поумневший планировщик, который может запускать однопоточный код на выделенном ядре для повышения производительности.
Да вроде всё нормально там, однопоточный процесс постоянно скачет по ядрам и частота нагруженных ядер синхронно с загрузкой бустится.
Разницу можно заметить выключив турбобуст, скорость работы этого процесса снизится пропорционально частоте.

Если про Windows — то у Руссиновича и Соломона в книге "Внутреннее Устройство Windows", если про Linux — то основы почитать можно у Бовета и Чезатти в "Understanding the Linux kernel", а потом уже в дайджестах на lwn.net и в документации на ядро.

НЛО прилетело и опубликовало эту надпись здесь

Раза в 2 и не только новые процессоры, а старые с TDP 5-7 вт и двумя ядрами Skylake тоже.
По сути получается что 4 слабых ядра выходят производительнее чем одно мощное при многопоточной нагрузе, но мощное ядро раза в 2 производительнее при однопоточной нагрузке.
Короче без специального планировщика под эти процы толку от них не будет и они вряд-ли будут лучше старых 5-7 вт процов у которых 2 мощных ядра.


А процы типа: atom z3735, x5, x7 вообще не советую, они очень слабые по сравнению с m3, m5, i3, i5. Но при этом они очень дешёвые, поэтому встречаются в китайских планшетах по 10к руб.

Но в ноутбуках/планшетах потребность в столь многопоточной нагрузке очень невелика, а именно в этот сегмент эти чипы и ориентированы. Скорее мог бы быть смысл сделать наоборот: 1 атом + 2-4 core, что бы idle потребление снизить.
В конечном счёте всё зависит от цены, atom процы стоят по $20, поэтому есть дешёвые планшеты с ними, я сам давно брал за 4200р подобный планшет.
А вот core m процы стоят ровно так же как U и H процы для мощных ноутов, поэтому планшеты дорогие, а в ультрабуках и U процы нормально живут.
Я полностью согласен что лучше 2 core ядра и 1-2 атомных, но сколько это будет стоить не понятно, вроде на эти процы цен пока нету, но думаю они будут явно не $20 за штуку, а скорее всего дороже чем обычные core M, а значит я не знаю зачем они вообще нужны тогда. Планшеты за 40-50к не думаю что имеют хоть какой-то спрос.
судя по картинке, по площади 2xCore ~= 4x Atom, то есть по цене 2+1 и 1+3(4) должны не сильно отличаться.
Если тупо по площади считать, то атомы по размерам 12х12, что по площади больше чем core M процы а core M процы стоят минимум $300.
Так откуда такие цены то $20 за атом и $300+ за core?
В этом гибридном вообще ещё 2 кристалл и ещё память, что будет стоить хз сколько.
Не знаю, как интел устанавливает цены. Я смотрю на картинку из статьи и выходит, что вместо 4хатомов по площади можно было впихнуть ещё 1 core + 1-2 атома (на глаз). По стоимости производства (себестоимости) должно выйти одинаково.
Ну так какая разница нам потребителям сколько там это по площади стоит для интела?
Главное сколько будет стоить проц и устройства с ним.
И что-то пока-что дешёвых устройств с этими новыми процами не ожидается, а по производительности они +- как core M и сильно хуже U процов.
Единственный их плюс что они в фоне не жрут и могут лежать всегда включенные как телефоны.
согласен. Я имел ввиду, что Интел, возможно, могут сделать гибрид 2xCore+1xAtom с ценой аналогичной этим гибридам, который был бы более интересен для планшетов чем 1+4.
Мне кажется что интел всё таки поставил 4 ядра для якобы много потока и одно ядро для хорошей отзывчивости.
Вряд-ли они будут теперь что-то менять, когда процессоры уже готовы.
Как вариант в будущих 7нм может добавят ещё одно ядро core ну или дальше будут придерживаться той же стратегии и добавят ещё пару атомных.
Я честно не знаю зачем все помешались на этих медленных маленьких ядрах.
У меня вот redmi note 8 pro, 2 мощных ядра, ну и конечно же всегда всё работает на них, а остальные 6 подключаются только если многопоток.
И производительность при загрузке всех ядер +- такая же как при загрузке двух мощных. То есть смысла нету в этих слабых ядрах и 1-2 таких ядер хватило бы для фоновых задач, когда экран выключен.
в этом не много смысла. при многопоточной нагрузке в условиях малого потреболения атомы лучше корок. а при малопоточной не нужно 2 ядра коре
Многопоточная нагрузка в условиях малого потребления — это вещь экзотическая :). При малопоточной нагрузке вроде browser/word 2 ядра core всё же не помешает, может даже 4, вот если более — тогда да, можно и атомами обойтись. Опять же, выигрыш по энергопотреблению (30%) есть только при низкой нагрузке, типа 50% от максимума одного атома, что соотв. 35% Core, это видно по однопоточному графику. Это значит, что при одинаковой нагрузке (почти любой) три ядра Core не будут уступать по энергеэффективности 4м ядрам Atom. При этом у Core будет больше запас по производительности (но тогда придётся платить энергопотреблением).
Единственный случай, когда у атома действительно ниже энергопотребление — это idle или почти idle.
«Многопоточная нагрузка в условиях малого потребления — это вещь экзотическая :)» — вот для этого ему 4 ядра атомов. для мало поточной — 1 ядро коре. такие дела
Выглядите довольно интересно. Ввиду относительной новизны FDI для Intel любопытно, насколько хорошо отработана технология пакетизации чипов и не будет ли бессвинцовый припой слабым звеном в условиях недостаточного охлаждения, ибо разборка и ремонт столь компактных конечных изделий не обещают быть элементарными.
Если судить по рисунку power/performance из статьи, то смысла в Атомах почти нет, при 50% performance Atom выигрывает буквально 2 процентных пункта по энергопотреблению, то есть он на 10% эффективней. При уровне нагрузки в 30% разрыв эффективности доходит до 20-30%. На общем фоне это экономия на спичках. Думаю реальная экономия — финансовая, т.к. Атом занимает меньше места на чипе.
там забыли второй рисунок (для многопотока), там наглядно видно зачем этот самый атом нужен.
Да, многопоточный график выглядит эффектно, но обманчив, т.к. одно core по площади занимает меньше 4х атом, нужно сравнивать 4xAtom vs 2xCore и тогда разрыв по энергопотреблению сильно сократится, скорее всего в 4 раза. image
Из однопоточного графика видно что при загрузке до 1.1=2х0.55 энергопотребление у 2хCore и 2х Atom будет одинаковое (графики однопотока пересекаются).
Если брать 2xCore vs 4xAtom, то для atom выйдет: performance=4*0.55=2.2, power=0.25*4=1.0. Теперь возьмем 2xCore: perf=2.0, power=2.0 либо performance=1.1, power=0.5. Это при линейном росте производительности от числа ядер.
причем тут площадь? их волнует потребление. а тут при одно потреблении в районе 62 процента, 4 ядра третмонта дают в 2 раза больше производительности.
ну и с площадью там не так просто, там еще кэш L3 не показан.

интереснее, почему они обошлись без HT. скорее всего решили, что лучше загружать исполнительные устройства на всех ядрах, более равномерно выделяя тепло, чем парить одно ядро
площадь при том, что она определяет цену. Судя по картинке, 4 атома по площади примерно как 2 Core, а не 1, соответственно было бы интересно так и сравнивать. Если растянуть 1xCore в два раза по обеим осям, получится perf=0.95, power=1.25 по сравнению с 4хAtom. Хуже, но всего лишь на 30% примерно.
с учетом того, что ядро занимает очень малую часть кристалла, предположение что это как-то сильно влияет на цену сильно преувеличено. их волновало только производительность в условиях зажатого энергопакета
То есть они сделали 1+4 вместо 2.5+0 при одинаковой цене только ради 30% энергопотребления при многопоточной загрузке? Как-то не оч. интересно. Мне трудно понять, на что Интел рассчитывает. Вряд ли эти гибриды смогут существенно продлить жизнь планшетам в сравнении с простым 2хCore или, ещё лучше, 2+1.
я не понял, что такое 2.5 + 0
1) интел сделала нишевый продукт, который может в однопоток, может в многопоток. в условиях сильно ограниченного потребления
2) опробовала многослойную компоновку
2+1 вообще бессмысленная схема, можно сделать 2+0 и просто ронять частоту.
судя по графику в многопоточной нагрузке 2 коре проиграют 4 атомам
можно сделать 2+0 и просто ронять частоту
нельзя, видно что в idle у Core высокое минимальное потребление. Не знаю почему, так на графике нарисовано.
может в многопоток. в условиях сильно ограниченного потребления
3 ядра Core не уступят 4м ядрам атом по энергопотреблению в многопотоке, это видно по пересечению однопоточных графиков.
Моя мысль в том, что 2-3 ядра Core всегда* лучше 4х ядер Атом по производительности и не хуже по энергопотреблению. *Кроме очень низкой однопоточной нагрузки вроде планшет в idle. Для этого можно добавить 1 ядро атом.
просто для иллюстрации — посмотрите сколько интел жертвует площади под IPU
у меня два вопроса
1) почему отключили HT ядру коре? из-за большого количества портов санниковы выигрывают от HT больше других процессоров
2) почему отключили HT ядрам третмонт? у него вообще декодер сразу рассчитан на HT и однопотоке слаб
Зарегистрируйтесь на Хабре, чтобы оставить комментарий