Вопрос: Почему «добавление большего количества ядер» не сталкивается с такими же физическими ограничениями, как «ускорить работу процессора»?


В 2014 году я слышу много языков программирования, рекламируемых для их параллелизма функции. Говорят, что параллелизм имеет решающее значение для повышения производительности.

Сделав это заявление, многие люди обращают внимание на статью 2005 года Свободный обед закончился: фундаментальный поворот к параллелизму в Программного обеспечения, Основа аргументом является то, что становится все труднее увеличить тактовую частоту процессоров, но мы все равно можем поместить больше ядер на чипе, и чтобы получить производительность, программное обеспечение необходимо будет написать, чтобы воспользоваться преимуществами несколько ядер.

Некоторые ключевые цитаты:

Мы привыкли видеть, что 500-мегагерцовые процессоры уступают место 1 ГГц ЦП уступают место   2 ГГц, и так далее. Сегодня мы находимся в диапазоне 3 ГГц на мейнстрим   компьютеры.

Ключевой вопрос: когда это закончится? В конце концов, закон Мура предсказывает   экспоненциальный рост, и явно экспоненциальный рост не может продолжаться   навсегда, пока мы не достигнем жестких физических пределов; свет не получает никаких   Быстрее. Рост должен в конечном счете замедляться и даже заканчиваться.

... Становилось все труднее и труднее использовать более высокие тактовые частоты из-за   к не только одному, но и нескольким физическим проблемам, особенно к нагреву (слишком много   его и слишком сложно рассеять), потребляемая мощность (слишком высокая) и   проблемы утечки тока.

... Будущее Intel и большинства поставщиков процессоров лежит в другом месте как чип   компании настойчиво преследуют одни и те же новые многоядерные направления.

... Multicore - это запуск двух или более реальных процессоров на одном чипе.

Вероятно, предсказания этой статьи задержались, но я не понимаю, почему. я имеют только очень смутные представления о том, как работает оборудование.

Мое упрощенное представление - «становится все труднее упаковать больше вычислительной мощности в одно и то же пространство »(из-за проблем с теплом, потреблением энергии и т. д.). будет ожидать, что вывод будет «поэтому нам нужно будет больше компьютеров или запускать наши программы на нескольких компьютерах ». (И действительно, облачные вычисления - это то, о чем мы больше слышим.)

Но часть решения, похоже, является многоядерной архитектурой. Если компьютеры растут в размерах (чего у них нет), это просто кажется другим способом сказать «упакуйте больше энергии в одно и то же пространство».

Почему «добавление большего количества ядер» не сталкивается с теми же физическими ограничениями, что и «сделать CPU быстрее "?

Пожалуйста, объясните в самых простых выражениях. :)


108
2017-08-15 14:22


Источник


Есть некоторые связанные вопросы Электротехника: electronics.stackexchange.com/q/122050/34550  electronics.stackexchange.com/q/76580/34550 - Bob
en.wikipedia.org/wiki/Moore%27s_law стоит прочитать - так как мы говорим о двух разных вещах. Закон Мура не о такте часов - его о количество транзисторов - Journeyman Geek♦
Давайте притворимся, что это было 30 лет назад, а процессоры работали на частоте 4.77 МГц. Почему вы могли разместить 1000 компьютеров с 4-мегагерцовыми процессорами в одной комнате, хотя было невозможно получить процессор 4 ГГц? - user20574
@NathanLong, но намного проще получить больше места (для большего количества компьютеров), чем получить более быстрый компьютер. - user20574
Аналогия: двигатель автомобиля может быть изготовлен только на таком количестве оборотов, но вы можете легко болтовать два вместе. - OJFord


Ответы:


Резюме

  • Экономика. Это дешевле и проще в проектировании процессора, который имеет больше ядер, чем более высокая тактовая частота, потому что:

  • Значительное увеличение использования энергии. Потребляемая мощность процессора быстро возрастает по мере увеличения тактовой частоты - вы можете удвоить количество ядер, работающих на более низкой скорости, в тепловом пространстве, которое требуется для увеличения тактовой частоты на 25%. Четырехместный на 50%.

  • Существуют и другие способы увеличить скорость последовательной обработки, а производители процессоров хорошо используют их.


Я собираюсь в значительной степени охарактеризовать отличные ответы на этот вопрос на одном из наших сестринских сайтов SE. Так что отправляй их!


Ограничения скорости часов

Существует несколько известных физических ограничений для тактовой частоты:

  • Время передачи

    Время, затрачиваемое на электрический сигнал для прохождения по цепи, ограничено скоростью света. Это жесткий предел, и вокруг него нет известного способа1, В гигагерцовых часах мы приближаемся к этому пределу.

    Тем не менее, нас еще нет. 1 ГГц означает одну наносекунду за такт. В это время свет может перемещаться на расстоянии 30 см. При 10 ГГц свет может перемещаться на 3 см. Одно ядро ​​центрального процессора имеет ширину около 5 мм, поэтому мы столкнемся с этими проблемами где-то 10 ГГц.2

  • Задержка переключения

    Недостаточно просто рассмотреть время, необходимое для того, чтобы сигнал переместился с одного конца на другой. Нам также необходимо учитывать время, необходимое для того, чтобы логические ворота в CPU переключались из одного состояния в другое! По мере увеличения тактовой частоты это может стать проблемой.

    К сожалению, я не уверен в специфике и не могу предоставить никаких чисел.

    По-видимому, перекачивание в нее большей мощности может ускорить переключение, но это приводит к проблемам потребления энергии и рассеивания тепла. Кроме того, больше энергии означает, что вам нужны громоздкие кабелепроводы, способные обрабатывать его без повреждений.

  • Теплоотдача / потребление энергии

    Это большой. Цитата из ответ fuzzyhair2:

    Последние процессоры производятся с использованием технологии CMOS. Каждый раз, когда есть тактовый цикл, мощность рассеивается. Следовательно, более высокие скорости процессора означают большее рассеивание тепла.

    Есть некоторые прекрасные измерения на Эта тема на форуме AnandTech, и они даже получили формулу для потребления энергии (которая идет рука об руку с генерируемым теплом):

    Formula
    Кредит на Idontcare

    Мы можем представить это на следующем графике:

    Graph
    Кредит на Idontcare

    Как вы можете видеть, потребление энергии (и тепла) очень быстро возрастает по мере увеличения тактовой частоты за определенную точку. Это делает невозможным неограниченное увеличение тактовой частоты.

    Причина быстрого увеличения использования энергии, вероятно, связана с задержкой переключения - недостаточно просто увеличить мощность, пропорциональную тактовой частоте; напряжение также должно быть увеличено для поддержания стабильности при более высоких тактах. Это может быть не совсем правильно; не стесняйтесь указывать исправления в комментарии или редактировать это ответ.


Больше ядер?

Так почему же больше ядер? Ну, я не могу ответить окончательно. Вы должны спросить людей у ​​Intel и AMD. Но вы можете видеть выше, что с современными процессорами в какой-то момент становится нецелесообразным увеличивать тактовую частоту.

Да, многоядерность также увеличивает требуемую мощность и теплоотдачу. Но он аккуратно избегает вопросов времени передачи и задержки переключения. И, как вы можете видеть из графика, вы можете легко удвоить количество ядер в современном процессоре с теми же тепловыми накладными расходами, что и 25-процентное увеличение тактовой частоты.

Некоторые люди это сделали - нынешние мировой рекорд по разгону просто застенчивый 9 ГГц. Но это важный технический вызов для этого, сохраняя энергопотребление в допустимых пределах. Дизайнеры в какой-то момент решили добавить больше ядер для выполнения большей работы в параллели обеспечит более эффективное повышение производительности в большинстве случаев.

Именно здесь пришла экономия - она, вероятно, была дешевле (меньше времени проектирования, менее сложной для производства), чтобы идти по многоядерному маршруту. И легко выйти на рынок - кто не любит нового восьмиядерный чип? (Конечно, мы знаем, что многоядерность бесполезна, когда программное обеспечение не использует ее ...)

Там является недостатком многоядерности: вам нужно больше физического пространства, чтобы добавить дополнительное ядро. Тем не менее, размеры процессоров постоянно сильно сокращаются, поэтому есть много места для размещения двух копий предыдущего дизайна - реальный компромисс не в состоянии создавать более крупные, более сложные одиночные ядра. С другой стороны, увеличение сложности ядра плохо с точки зрения дизайна - большая сложность = больше ошибок / ошибок и ошибок при изготовлении. Кажется, мы нашли счастливую среду с эффективными ядрами, которые достаточно просты, чтобы не занимать слишком много места.

Мы уже достигли предела с количеством ядер, которые мы можем поместить на одну матрицу при текущих размерах процесса. Мы могли бы поразить предел того, как скоро мы сможем угаснуть ситуацию. Так что же дальше? Нужно ли нам больше? К сожалению, трудно ответить. Кто-нибудь здесь ясновидящий?


Другие способы повышения производительности

Таким образом, мы не можем увеличить тактовую частоту. И больше ядер имеют дополнительный недостаток - а именно, они помогают только тогда, когда программное обеспечение, работающее на них, может их использовать.

Итак, что еще мы можем сделать? Как современные процессоры намного быстрее, чем более старые, с одинаковой тактовой частотой?

Часовая скорость - это действительно очень грубое приближение к внутренним работам процессора. Не все компоненты процессора работают с такой скоростью - некоторые могут работать один раз каждые два тика и т. Д.

Что более важно, так это число инструкции вы можете выполнить за единицу времени. Это намного лучший показатель того, насколько может достичь одно ядро ​​ЦП. Некоторые инструкции; некоторые из них будут принимать один такт, некоторые из них занимают три. Подразделение, например, значительно медленнее, чем добавление.

Таким образом, мы могли бы повысить производительность процессора за счет увеличения количества инструкций, которые он может выполнять в секунду. Как? Ну, вы могли бы сделать инструкцию более эффективной - возможно, разделение теперь занимает всего два цикла. Тогда есть конвейерная обработка инструкций, Разбирая каждую команду на несколько этапов, можно выполнять команды «параллельно», но каждая инструкция по-прежнему имеет четко определенный последовательный порядок, соответствующий инструкциям до и после него, поэтому для него не требуется поддержка программного обеспечения, такая как многоядерная делает.

Там есть другой путь: более специализированные инструкции. Мы видели такие вещи, как SSE, которые предоставляют инструкции для обработки больших объемов данных за один раз. С аналогичными целями постоянно внедряются новые наборы инструкций. Это, опять же, требует поддержки программного обеспечения и увеличения сложности аппаратного обеспечения, но они обеспечивают хорошее повышение производительности. Недавно был AES-NI, который обеспечивает аппаратное ускорение AES-шифрования и дешифрования, намного быстрее, чем пустая арифметика, реализованная в программном обеспечении.


1 Во всяком случае, не слишком углубляясь в теоретическую квантовую физику.

2 На самом деле это может быть ниже, поскольку распространение электрического поля происходит не так быстро, как скорость света в вакууме. Кроме того, это просто для прямой линии - вполне вероятно, что есть хотя бы один путь, который значительно длиннее прямой.


142
2017-08-15 15:13



Кроме того, во многих приложениях узким местом является не время вычисления, а время срыва для извлечения данных из ОЗУ (или, бог запрещайте это, с диска); Таким образом, еще одно значительное ускорение происходит от более крупных и быстрых кэшей процессоров. - Matteo Italia
@MatteoItalia Yup. И есть улучшения в прогнозировании ветвлений, и, вероятно, гораздо больше я не знаю. Вне процессора у нас также есть более быстрые шины, более быстрая память, более быстрые диски и связанные с ними протоколы и т. Д. - Bob
Вы упомянули, что проблемы, связанные с «жестким пределом» скорости света, будут возникать при «где-то минусе 20 ГГц». Ваши расчеты неверны; электрические сигналы движутся со скоростью, меньшей скорости света, в зависимости от геометрии провода. - Giulio Muscarello
Пожалуйста, не используйте «экспоненциальный», если для этого отношения есть более правильные слова (квадратичные, кубические и т. Д.) ... - Oliver Charlesworth
@OliCharlesworth Пожалуйста, прочитайте сноску. Это точно почему есть сноска, и почему у меня есть ссылки на нее повсюду exponential используется. Это совершенно правильное использование слова, и было бы тангенциально, чтобы точка этого ответа увязла в математических деталях. Если вы действительно хотите попытаться «исправить» его, не стесняйтесь предлагать редактирование. Это не зависит от меня, если оно будет принято или нет, если вы не измените значение значимо. - Bob


Физика - физика. Мы не можем навсегда сохранить упаковку транзисторов в все меньшие пространства. В какой-то момент он становится настолько маленьким, что вы имеете дело со странным квантовым дерьмом. В какой-то момент мы не можем упаковать дважды как и многие транзисторы в течение года, как мы привыкли (что и есть закон moore).

Сырые часы ничего не значат. Мой старый Pentium M был примерно половиной тактовой частоты современного настольного процессора (и все же во многом Быстрее) - и современные системы едва приближаясь к скоростям систем 10 лет назад (и явно быстрее). По сути, «просто» набирать скорость часов, во многих случаях не дает реальных выигрышей в производительности. Это может помочь некоторые односторонние операции, но вам лучше потратить бюджет проекта на лучшую эффективность с точки зрения всего остального.

Несколько ядер позволяют делать два  или больше вещей сразу, поэтому вам не нужно ждать, пока одна вещь закончится для следующей. В более короткий срок вы можете просто поместить два существующих ядра в один и тот же пакет (например, с помощью Pentium Ds, и их MCM, который был переходным дизайном), и у вас есть система, которая в два раза быстрее. Конечно, большинство современных реализаций действительно разделяют такие вещи, как контроллер памяти.

Вы также можете строить умнее по-разному. ARM делает Big-Little - имея 4 «слабые» ядра с низким энергопотреблением, работающие вместе с четырьмя мощными ядрами, поэтому у вас есть лучшее из обоих миров. Intel позволяет вам дросселировать (для повышения энергоэффективности) или разгона конкретный (для лучшей производительности одного потока). Я помню, что AMD что-то делает с модулями.

Вы также можете перемещать такие вещи, как контроллеры памяти (поэтому у вас есть более низкая латентность) и связанные с IO функции (современный процессор не имеет северного моста), а также видео (что более важно с ноутбуками и дизайном AIW). Это имеет смысл делать эти вещи, чем «просто» продолжать наращивать скорость часов.

В какой-то момент «больше» ядер может не работать, хотя графические процессоры имеют сотни Конечно.

Мультикоры как таковые позволяют компьютерам работать умнее всеми этими способами.


14
2017-08-15 14:36



Следует отметить, что ядра GPU разработаны для очень конкретной цели, в отличие от ядер процессора, которые являются более универсальными. Также следует отметить, что платы видеокарты значительно больше, чем у процессоров (что означает, что даже если ядра не используют всю комнату на доске, у них все еще есть БОЛЬШЕ больше места для рассеивания тепла). - user2366842
true, но это пример, когда вы делаете масштабирование ядер на крайний уровень. Я, скорее всего, вернусь к этому ответу утром - Journeyman Geek♦
«вы можете просто поместить два существующих ядра в один и тот же пакет». Но как они достигают этого, не используя больше места для дополнительных ядер Как?! Магия? Единороги? Щенки? (По вашему аватару, я подозреваю, что последний) - That Brazilian Guy
Pentium Ds были такими en.wikipedia.org/wiki/Pentium_D в основном - Journeyman Geek♦
wierd quantum crap + 1 за это! - Dave


Простой ответ

Самый простой ответ на вопрос

Почему «добавление большего количества ядер» не сталкивается с такими же физическими ограничениями, как «ускорить работу процессора»?

фактически находится в пределах другой части вашего вопроса:

Я бы ожидал, что вывод будет «поэтому нам придется иметь большие компьютеры или запускать наши программы на нескольких компьютерах».

По сути, несколько ядер похожи на несколько «компьютеров» на одном устройстве.

Комплексный ответ

«Ядро» - это часть компьютера, которая фактически обрабатывает инструкции (добавление, умножение, «и» ing и т. Д.). Ядро может выполнять только одну команду за один раз. Если вы хотите, чтобы ваш компьютер был «более мощным», вы можете сделать две основные вещи:

  1. Увеличьте пропускную способность (увеличьте тактовую частоту, уменьшите физический размер и т. Д.)
  2. Используйте больше ядер на одном компьютере

Физические ограничения для № 1 - это прежде всего необходимость сброса тепла, вызванного обработкой и скоростью электрона в цепи. Как только вы отделите некоторые из этих транзисторов к отдельному ядру, вы в значительной степени облегчите проблему с нагревом.

Для № 2 существует важное ограничение: вы должны разделить проблему на несколько независимый проблемы, а затем объединить ответ. На современном персональном компьютере это не проблема, так как в любом случае есть множество независимых проблем, которые все время соперничают за вычислительное время с ядром. Но при выполнении интенсивных вычислительных задач несколько ядер действительно помогают, если проблема поддается параллелизму.


9
2017-08-15 17:13



«несколько ядер похожи на несколько« компьютеров »на одном устройстве». Правильно, но мое замешательство было, как вы вписываете их всех там? Я думал, что «мы не можем идти быстрее», было симптомом «мы не можем больше урезать». - Nathan Long
Несколько ядер занимают больше места, чипы становятся все больше. Бремя было перенесено с процессора на инженера-программиста ... чтобы на самом деле работать быстрее на одном из этих гигантских многоядерных процессоров, программное обеспечение должно быть написано так, что вы можете сократить его работу пополам и сделать обе половины самостоятельно. - James
Короткий ответ заключается в том, что потребляемая мощность пропорциональна кубу тактовой частоты. Когда сигналы движутся на большие расстояния, единственная иллюзия потока становится сложнее поддерживать. Подробный ответ: amazon.com/... - Rob


Почему «добавление большего количества ядер» не сталкивается с такими же физическими ограничениями, как «ускорить работу процессора»?

Они сталкиваются с теми же физическими ограничениями, но переход к многоядерному дизайну дает нам некоторое пространство для передышки, прежде чем мы нанесли некоторые из них. В то же время возникают другие проблемы, вызванные этими ограничениями, но их легче преодолеть.

Факт 1: Потребляемая мощность и излучаемое тепло растут быстрее, чем вычислительная мощность. Нажатие центрального процессора с 1 ГГц на 2 ГГц приведет к потреблению энергии от 20 Вт до 80 Вт, что также связано с рассеиваемой теплотой. (Я только что составил эти цифры, но это совершенно так, как это работает)

Факт 2: Покупка второго процессора и работа на обоих частотах 1 ГГц удвоила бы вычислительную мощность. Два процессора, работающие на частоте 1 ГГц, могут обрабатывать такой же объем данных, как один 2 ГГц процессор, но каждый из них будет потреблять только 20 Вт энергии, что составляет всего 40 Вт.

Прибыль: Удвоение номера CPU вместо тактовой частоты экономит нам некоторую энергию, и мы не так близки к «частотным барьерам», как раньше.

Проблема: Вы должны разделить работу между двумя CPU и объединить результаты позже.

Если вы сможете решить эту проблему в приемлемое время и использовать меньше энергии, чем только что сохранили, то вам просто выгодно использовать несколько процессоров.

Теперь вам просто нужно объединить два процессора в один двухъядерный процессор, и вы дома. Это полезно, поскольку ядра могут совместно использовать некоторые части процессора, например кеш (ответ).


6
2017-08-15 19:43



Мы продолжаем наносить физические ограничения по 1000 различным способам, размер матрицы (для многоядерных процессоров, что приводит к меньшему производственному процессу), размер mobo (для нескольких процессоров), усилители, нарисованные по трассам (оба). это не похоже на то, что вы могли бы поставить 2 cpus на m-atx или 4 и память на борту atx, и эти проекты будут заменять DECADES. Я согласен с остальными. - Rostol
@Rostol Это хороший момент, я отредактировал ответ. - gronostaj


Короче говоря: Ускорение отдельных ядер достигло своих пределов, поэтому мы продолжаем сокращать их и добавлять больше их, пока это не достигнет своих пределов, или мы не сможем переходить на более качественные материалы (или добиться фундаментального прорыва, который свергает установленные технологии, что-то вроде домашние, фактически работающие, квантовые вычисления).

Я думаю, что эта проблема многомерна, и для написания более полной картины потребуется несколько писем:

  1. Физические ограничения (налагаемые реальной физикой): Как скорость света, квантовая механика, все это.
  2. Проблемы с производством: как мы производим все меньшие структуры с необходимой точностью? Проблемы, связанные с сырьем, материалы, используемые для построения схем, долговечность.
  3. Архитектурные проблемы: тепло, вывод, потребление энергии и т. Д.
  4. Экономические проблемы: Какой самый дешевый способ повысить производительность для пользователя?
  5. Усиление и восприятие пользователями производительности.

Их может быть намного больше. Многоцелевой процессор пытается найти решение для скремблирования всех этих факторов (и более) в один, массово-производимый чип, который соответствует 93% субъектов на рынке. Как вы видите, последний момент является самым важным, восприятие потребителя, которое непосредственно вытекает из того, как клиент использует процессор.

Спросите себя, каково ваше обычное приложение? Возможно: 25 вкладок Firefox, каждый из которых воспроизводит некоторые ролики в фоновом режиме, в то время как вы слушаете музыку, все в ожидании вашей работы по созданию, которую вы начали примерно 2 часа назад, чтобы закончить. Это большая работа, и вам все же нужен гладкий опыт. Но ваш процессор может справиться с ОДНОЙ задачей в то время! Об одном. Итак, что вы делаете, вы раскалываете вещи и делаете очередную очередь, и каждый получает свою долю, и все счастливы. Кроме вас, потому что все становится лагги и не гладко.

Таким образом, вы повышаете скорость своего процессора, чтобы делать больше операций за такое же количество времени. Но, как вы сказали: тепло и энергопотребление. И именно здесь мы приходим к сырьевой части. Кремний становится более проводящим, поскольку он становится горячим, что означает, что поток течет через материал, когда вы его нагреваете. Транзисторы имеют более высокую потребляемую мощность, поскольку вы переключаете их быстрее. Также высокие частоты делают перекрестные помехи между короткими проводами хуже. Таким образом, вы видите, что приближение скорости приведет к «расплавлению». До тех пор, пока у нас не будет лучшего сырья, чем кремний или гораздо лучше транзисторов, мы застряли там, где мы с однократной скоростью.

Это возвращает нас к тому, с чего мы начали. Параллельно делайте вещи. Давайте добавим еще одно ядро. Теперь мы можем сделать две вещи одновременно. Итак, давайте немного охладимся и просто напишем программное обеспечение, которое может разделить его работу на два, менее мощных, но более функциональных ядра. Этот подход имеет две основные проблемы (кроме того, для того, чтобы мир программного обеспечения нуждался в времени для адаптации): 1. Сделайте чип более крупным или уменьшите индивидуальное ядро. 2. Некоторые задачи просто не могут быть разделены на две части, которые работают одновременно. Продолжайте добавлять ядра до тех пор, пока вы можете сжать их, или сделать чип более крупным и сохранить проблемы с теплом. О, давайте не будем забывать о клиенте. Если мы изменим наши привычки, отрасли должны адаптироваться. Посмотрите все блестящие «новые» вещи, с которыми столкнулся мобильный сектор. Вот почему мобильный сектор считается настолько важным, и каждый хочет взять его в руки.

Да, эта стратегия будет достигать своих ограничений! И Intel это знает, поэтому они говорят, что будущее лежит где-то в другом месте. Но они будут продолжать делать это, пока это дешево, эффективно и выполнимо.

И последнее, но не менее важное: физика. Квантовая механика ограничит сокращение стружки. Скорость света еще не ограничена, так как электроны не могут перемещаться со скоростью света в кремнии, на самом деле это намного медленнее, чем это. Кроме того, это импульсная скорость, которая ставит жесткий колпачок на скорость, предлагаемую материалом. Подобно тому, как звук движется быстрее в воде, чем в воздухе, электрические импульсы движутся быстрее, например, в графене, чем в кремнии. Это приводит к возврату сырья. Графен замечателен, поскольку его электрические свойства уходят. Это создало бы гораздо лучший материал для создания процессоров, к сожалению, его очень сложно производить в большом количестве.


5
2017-08-15 15:49





Скажем (как нереалистичный пример, но все равно нужно понять), у вас есть процессор, который работает на 100F. Как обычно работает многоядерный процессор, так это частота тактовых импульсов, что процессор, работающий на 100F, и понижающий его, тем самым снижая скорость. Поскольку он больше не работает как горячий, они могут перебирать второй, третий или даже четвертый рядом с ним, не оказывая существенного влияния на общую температуру процессора и получая преимущества от многоядерных процессоров. Очевидно, это связано с некоторыми накладными расходами, так как ядрам все же приходится управлять одним местом, одним ядром. Чем больше ядер вы добавляете, тем больше накладных расходов. Что касается одиночных ядер, тем больше вы нажимаете на них скорость, тем больше тепла они генерируют. Это, очевидно, имеет физические ограничения (т. Е. После определенного момента, он начинает пагубно влиять на производительность и даже опасен, если он работает слишком горячим)

С течением времени они нашли способы уменьшить физический размер процессора, поэтому мы еще не столкнулись с необходимостью еще большего пространства, однако, например, 16 основных процессоров на самом деле не существуют (на время написания) за пределами оборудования класса серверов из-за ограничений физического размера, поскольку процессоры класса серверов значительно больше физически, чем стандартные потребительские оценки.


2
2017-08-15 14:30





CPU = Автомобильный двигатель: легче сделать более мощный автомобиль с 16 клапанами, то есть lamborghini, чем автомобиль с высокой скоростью вращения, который имел бы один гигантский клапан / цилиндр со скоростью 100 000 об / мин.

Причины физически и химические, кремний необходимо заменить на вычислительное ракетное топливо, чтобы изменить баланс между количеством ядер и скоростью ядра.


2
2017-08-17 07:58





Я бы сказал, что основное ограничение пределов вычислительной мощности связано прежде всего с пределом того, насколько быстро мы можем перемещать электрон через цепь (скорость света электронный дрейф). Есть много других факторов, как вы упомянули.

Добавление дополнительных ядер не ускорит работу процессора, хотя это позволит ему обрабатывать больше за один и тот же промежуток времени.

Закон Мура является очень интересным и информативным чтением. Эта цитата в частности имеет значение здесь:

Можно было бы также ограничить теоретические характеристики довольно практичного «конечного ноутбука» массой в один килограмм и объемом одного литра. Это делается с учетом скорости света, квантовой шкалы, гравитационной постоянной и постоянной Больцмана, дающей производительность 5,4258 ⋅ 1050 логические операции в секунду примерно на 1031 биты.


2
2017-08-15 14:38



Кстати, электроны действительно движутся очень медленно («скорость дрейфа»), порядка миллиметров в секунду IIRC. Вы больше ссылаетесь на скорость, с которой электрическое поле распространяется. - Bob
Я знал, что не должен осмеливаться действовать так, как будто я понимаю физику в малейшей степени. :) Спасибо за исправление / информирование меня об этом. - jredd
Кроме того, фактические тактовые частоты, при которых скорость распространения будет иметь значительный эффект, составляют около 10+ ГГц. Есть и другие причины, по которым современные процессоры предпочитают несколько ядер на более высоких часах. - Bob