О том, что собой представляет так называемый Закон Мура на Geektimes, наверное, рассказывать в подробностях не стоит — все мы знаем о нем, хотя бы и приблизительно. Если вспомнить кратко, то этот закон — эмпирическое наблюдение, которое сделано Гордоном Муром. Формулировок самого закона было несколько, но современная гласит, что количество транзисторов, размещаемых на кристалле интегральной схемы, удваивается каждые 24 месяца. Чуть позже появилась разновидность закона, где фигурирует не два года, а 18 месяцев. Это связано уже не с Муром, а с Давидом Хаусом из Intel. По его мнению, производительность процессоров должна удваиваться каждые 18 месяцев из-за одновременного роста как количества транзисторов, так и быстродействия каждого из них.
Со времени формулировки закона разработчики электронных элементов стараются шагать в ногу с установленными временными рамками. Вообще говоря, для 1965 года закон был чем-то необычным, его даже можно назвать радикальным. Тогда «мини ЭВМ» все еще не были очень уж маленькими, занимая в помещении объем обычного рабочего стола, а то и больший. В то время сложно было представить, что компьютеры со временем могут даже стать частью холодильника, стиральной машины или другой бытовой техники. Большинство людей никогда не видели компьютер, а те, кто видели, почти никогда с ними не работали. Ну а те, кто работали, использовали перфокарты и другие не слишком удобные инструменты взаимодействия с ЭВМ, которые, в свою очередь, работали для решения достаточно узкого круга задач.
Над идеей Мура после того, как о ней стало известно, начали даже подшучивать в журналах. Например, в одном из них разместили вот такую вот карикатуру:
Тогда было сложно представить, что вскоре даже такие компьютеры вовсе не будут считаться маленькими. Иллюстрацию, кстати, видел Мур, и она его очень удивила своей оригинальностью. Насколько можно судить, художник пытался передать несколько скептический настрой в отношении идеи постоянного уменьшения размеров ПК. Но через 25 лет эта иллюстрация стала вполне себе обыденной реальностью.
Влияние Закона Мура
Как уже говорилось выше, существует несколько вариаций Закона Мура, речь не идет только лишь о постоянном увеличении числа транзисторов в чипе. Одно из последствий идеи Мура — попытка выяснить, насколько быстро будут работать все уменьшающиеся по размеру транзисторы. Также ученые и специалисты по информационным технологиям, используя идею Мура, пытались и пытаются предзаказать, насколько быстро будет расти объем ОЗУ, основной памяти, насколько производительными будут чипы и т.п.
Но главное — не в том, какая из версий Закона Мура более любопытна/полезна, а в том, какое влияние основная идея оказала на наш мир. Здесь можно выделить три основные формы влияния. Это соперничество разработчиков, прогнозирвание и изменение архитектуры вычислительных систем.
Соперничество
Закон Мура можно использовать для того, чтобы выяснить, сколько информации можно хранить в объеме одного чипа. Этот закон, кстати, вполе можно отнести к RAM. На заре компьютерной техники, вернее, ПК, компьютерный чип мог хранить . Сами чипы стали называть RAM (Random Access Memory). Чипы с 16К стали выпускать многие. Затем, в полном соответствии с законом Мура или даже быстрее, появились чипы с 64 К. Инженеры, которые разрабатывали эти чипы, знали о Законе и старались ему соответствовать. Таким образом, с самого начала наладился особенный, безостановочный цикл производства, когда инженеры, выпуская один чип, уже заканчивали работать над его следующим поколением. Такая ситуация наблюдается и сейчас. Все знают о правилах и игры, и все в ней участвуют.
Прогнозирование
Зная о тенденции увеличения числа транзисторов в объеме чипа (а формула изначально была достаточно четкой) инженеры любой из компаний, выпускающих электронные компоненты, могли примерно представить себе, когда какое поколение чипов выйдет. И это был довольно точный прогноз. Также можно было себе представить, в каком году и с какой производительностью будет работать процессор.
Инженеры на предприятиях стали составлять производственные планы, ориентируясь, в основном, на Закон Мура. Продавцы компьютерной техники хорошо представляли себе, когда какое поколение машин должно уйти с рынка, и когда какое должно появиться.
Закон Мура, можно сказать, наладил производственный процесс выпуска электронных компонентов и систем. Сюрпризов в этом плане не было, да и быть не могло, ведь все работали примерно с одинаковой скоростью, не пытаясь обогнать или отстать от временных рамок, заданных Муром. Все было превосходно предсказуемым.
Архитектура ПК и элементов
Все тот же Закон Мура позволил инженерам разработать дизайн чипов, который стал на долгое время эталоном. Речь идет об Intel 4004 и его последующих инкарнациях. Была разработана специализированная архитектура, которая получила название архитектура фон Неймана.
В марте 1945 года принципы логической архитектуры были оформлены в документе, который назывался «Первый проект отчёта о EDVAC» — отчет для Баллистической Лаборатории Армии США, на чьи деньги осуществлялась постройка ЭНИАКа и разработка EDVACа. Отчет, поскольку он являлся всего лишь наброском, не предназначался для публикации, а только для распространения внутри группы, однако Герман Голдстайн — куратор проекта со стороны Армии США — размножил эту научную работу и разослал её широкому кругу ученых для ознакомления. Так как на первой странице документа стояло только имя фон Неймана[1], у читавших документ сложилось ложное впечатление, что автором всех идей, изложенных в работе, является именно он. Документ давал достаточно информации для того, чтобы читавшие его могли построить свои компьютеры, подобные EDVACу на тех же принципах и с той же архитектурой, которая в результате стала называться «архитектурой фон Неймана».
После завершения Второй Мировой войны и окончания работ над ЭНИАКом в феврале 1946 года команда инженеров и ученых распалась, Джон Мокли, Джон Экерт решили обратиться в бизнес и создавать компьютеры на коммерческой основе. Фон Нейман, Голдстайн и Бёркс перешли в Институт перспективных исследований, где решили создать свой компьютер «IAS-машина», подобный EDVACу, и использовать его для научно-исследовательской работы. В июне 1946 года они[2][3] изложили свои принципы построения вычислительных машин в ставшей классической статье «Предварительное рассмотрение логической конструкции электронно-вычислительного устройства». С тех пор прошло более полувека, но выдвинутые в ней положения сохраняют свою актуальность и сегодня. В статье убедительно обосновывается использование двоичной системы для представления чисел, а ведь ранее все вычислительные машины хранили обрабатываемые числа в десятичном виде. Авторы продемонстрировали преимущества двоичной системы для технической реализации, удобство и простоту выполнения в ней арифметических и логических операций. В дальнейшем ЭВМ стали обрабатывать и нечисловые виды информации — текстовую, графическую, звуковую и другие, но двоичное кодирование данных по-прежнему составляет информационную основу любого современного компьютера.
Все основы, которые были заложены несколько десятков лет назад и стали основой. В дальнейшем почти все оставалось неизменным, разработчики лишь старались сделать компьютеры все более производительными.
Стоит помнить, что в основе всего лежит Закон Мура. Все его инкарнации служили поддержкой базовой модели развития компьютерной техники, и уже мало что могло привести к разрыву этого цикла. И чем активнее шло развитие компьютерной техники, тем глубже, можно сказать, увязали в законе разработчики этих систем. Ведь создание иной архитектуры ЭВМ занимает годы и годы, и мало кто из компаний мог себе позволить эту роскошь — поиск альтернативных путей развития компьютерной техники. Научно-исследовательские организации вроде МИТ проводили храбрые эксперименты вроде Lisp Machine и Connection Machine, здесь же можно упомянуть и один из японских проектов. Но все это закончилось ничем, в ходу осталась архитектура фон Неймана.
Работа инженеров и программистов теперь заключалась в оптимизации работы своих программ и «железа», с тем, чтобы каждый квадратный миллиметр чипов работал все более эффективно. Разработчики соревновались в кэшировании все больших объемов данных. Также различные производители электронных компонентов старались (и стараются до сих пор) разместить как можно большее количество ядре в рамках одного процессора. Как бы там ни было, вся работа сосредоточилась на ограниченном количестве процессорных архитектур. Это X86, ARM и PowerPC. Тридцать лет назад их было гораздо больше.
X86 используются преимущественно на десктопах, ноутбуках и облачных серверах. ARM процессоры работают на телефонах и планшетах. Ну а PowerPC в большинстве случаев используются в автомобильной индустрии.
Интересным исключением из жестких правил игры, установленных Законом Мура, можно назвать GPU. Их разрабатывали для того, чтобы с высокой степенью эффективности обрабатывать графическую информацию, поэтому их архитектура отличается от процессорной (еще бы). Но для того, чтобы справляться со своей задачей, GPU пришлось дорабатывать независимо от эволюции процессоров. Архитектуру видеокарт оптимизировали для обработки большого количества данных, необходимых для прорисовки изображения на экране. Поэтому здесь инженеры разработали иной тип чипов, который не заменил существующие процессоры, а дополнил их возможности.
Когда закон Мура перестанет работать?
В обычном смысле он уже перестал работать, в том классическом понимании, о котором шла речь выше. Об этом свидетельствуют различные источники, включая, например, этот. Сейчас гонка еще продолжается. Например, в том же выпущенном 1971 году первом коммерческом 5-х битном процессоре Intel 4004 было 2300 транзисторов. Через 45 лет, в 2016 году, компания Intel представила 24-ядерный процессор Xeon Broadwell-WS с 5,7 млрд транзисторов. Этот процессор выпускается по 14 нм технологии. IBM не так давно анонсировала 7 нм процессор с 20 млрд транзисторов, а затем и 5 нм процессор с 30 млрд транзисторов.
Но 5 нм — это слой толщиной всего в 20 атомов. Здесь уже инженерия подступает вплотную к техническому пределу дальнейшего совершенствования техпроцесса. Кроме того, плотность размещения транзисторов в современных процессоров очень велика. На квадратный миллиметр — 5 или даже 10 миллиардов транзисторов. Скорость передачи сигнала в транзисторе очень высока и меет большое значение. Частота ядра работы современных наиболее быстрых процессоров составляет 8.76 ГГц. Дальнейшее ускорение тоже хотя и возможно, но является технической проблемой, причем очень и очень большой. Именно поэтому инженеры предпочли создавать мультиядерные процессоры, а не продолжать наращивать частоту работы одного ядра.
Это позволило сохранить темпы увеличения количества операций за секунду, предусмотренных законом Мура. Но все же сама мультиядерность это некоторое отступление от закона. Тем не менее, ряд специалистов считает, что не имеет значения, каким образом мы пытаемся «успеть», главное, что темпы развития технологий, в частности, компьютерной техники, более-менее соответствуют закону Мура.
Ниже показан график, построенный Стивом Джурветсоном, сооснователем компании Draper Fisher Jurvetson. Он утверждает, что это дополненный график, ранее представленный Рэем Курцвейлом.
На этом графике показана относительная стоимость количества операций на единицу времени (1 секунда). То есть мы можем наглядно видеть, насколько подешевели компьютерные вычисления с течением времени. Причем вычисления становились все более универсальными, если так можно выразиться. В 40-х годах существовали специализированные машины, предназначенные для взлома военных кодов. В 1950-х ЭВМ стали использовать для работы с общими задачами, и эта тенденция сохраняется до сих пор.
Интересно то, что на графике последние две позиции — это GPU, GTX 450 и NVIDIA Titan X. Что интересно — в 2010 году на графике не было никаких GPU, лишь мультиядерные процессоры.
В общем, GPU уже здесь, и многие ими довольны. Кроме того, сейчас все популярнее становится такое направление, как глубокое обучение, одно из проявлений нейросетей. Их разработкой занимаются многие компании, большие и маленькие. И GPU идеально подходят для нейросетей.
К чему все это? Дело в том, что общий рост количества вычислений пока сохраняется, да, но вот методы и оборудование меняются.
Что все это значит?
Сейчас меняется сама форма компьютерных вычислений. Архитекторам вскоре не нужно будет думать о том, что еще предпринять, чтобы успеть за законом Мура. Сейчас постепенно внедряются новые идеи, которые позволят достичь высот, недоступных обычным компьютерным системам с традиционной архитектурой. Возможно, в скором будущем скорость вычислений будет иметь не такое и большое значение, улучшить производительность систем можно будет иначе.
Самообучающиеся системы
Сейчас многие нейросети зависят от GPU. Для них создаются системы со специализированной архитектурой. Например, корпорация Google разработала собственные чипы, которые получили название TensorFlow Units (илиTPUs). Они позволяют сохранять вычислительные мощности за счет эффективности производимых вычислений. Корпорация Google использует эти чипы в своих дата-центрах, на их основе работают многие облачные сервисы компании. В результате эффективность работы систем выше, а потребление энергии — ниже.
Специализированные чипы
В обычных мобильных устройствах сейчас работают ARM-процессоры, которые являются специализированными. Эти процессоры обрабатывают информацию, поступающую с камер, оптимизируют обработку речи, в режиме реального времени работают с распознаванием лиц. Специализация во всем — вот, что ожидает электронику.
Специализированная архитектура
Да, свет клином не сошелся на архитектуре фон Неймана, сейчас разрабатываются системы с разной архитектурой, предназначенной для выполнения разных задач. Эта тенденция не только сохраняется, но даже ускоряется.
Безопасность компьютерных систем
Киберпреступники становятся все более умелыми, при взломе некоторых систем сейчас можно получить миллионы, десятки миллионов долларов. Но в большинстве случаев взломать систему можно из-за программных или аппаратных ошибок. Подавляющее количество приемов, используемых взломщиками, работают на системах с архитектурой фон Неймана, но они не будут работать с другими системами.
Квантовые системы
Так называемые квантовые компьютеры — экспериментальная технология, которая, кроме всего прочего, является еще и очень дорогой. Здесь используются криогенные элементы, плюс много всего другого, чего нет в обычных системах. Квантовые компьютеры абсолютно не похожи на привычные нам ЭВМ, и закон Мура к ним никак не применим. Тем не менее, с их помощью, как считают специалисты, можно радикально повысить производительность некоторых типов вычислений. Возможно, именно закон Мура привел к тому, что ученые и инженеры начали искать новые способы повышения эффективности вычислений, и нашли их.
В качестве послесловия
Скорее всего уже через 5-10 лет мы увидим абсолютно новые системы вычислений, речь сейчас о полупроводниковой технике. Эти системы будут опережать наши самые смелые планы и развиваться очень быстрыми темпами. Скорее всего, специалисты, стремясь обойти закон Мура, создадут новые технологии разработки чипов, которые, если бы о них нам рассказали сейчас, показались бы нам магией. Что сказали бы люди, жившие 50 лет назад, если бы им дали современный смартфон? Мало кто понял бы, как все работает. Так и в нашем случае.