Насколько быстры компьютеры

Сколько операций в секунду выполняет процессор

Терафлопс (TFLOPS) — величина, используемая для измерения производительности компьютеров, показывающая, сколько операций с плавающей запятой в секунду выполняет данная вычислительная система. 1 терафлопс = 1 триллион операций в секунду = 1000 миллиардов операций в секунду. Обычно имеются в виду операции над плавающими числами размера 64 бита в формате IEEE 754.

TFLOPS = 1012 FLOPS = 103 GFLOPS

Чтобы найти пиковую производительность ЭВМ R, терафлопс, нужно тактовую частоту F, МГц, умножить на число процессоров (процессорных ядер) n, домножить на количество инструкций с плавающей запятой на такт (4 для процессоров Core2 — 2 операции Float Multiple Add) и поделить на 1******0:

Так, например, пиковая производительность компьютера на базе двухъядерного процессора AMD Phenom 9500 sAM2+ с тактовой частотой 2,2 ГГц равна:

2200 МГц × 2 ядра × 4×10-6 = 17,6 млрд операций в секунду = 0,0176 терафлопс.

Для четырехядерного процессора Core 2 Quad Q6600:

2400 МГц × 4 ядра × 4×10-6 = 38,4 млрд операций в секунду = 0,0384 терафлопс.

Скопипастено с Википедии

Т.е. находите нужные данные для своего процессора, подставляете их в формулу и находите кол-во операций в секунду.

Для моего Intel Pentium 4:
3000 х 1 х 2 х 10-6 = 6 млрд операций в секунду = 0.006 терафлопс.

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

Для оценки производительности и сравнения таких вычислительных машин ввели термин «FLOPS»

Инфляция временных единиц

Для большинства программистов прикладного уровня время, которым измеряется производительность программ, останавливается на масштабе миллисекунд: ну какая разница, будет ли элемент в браузере рендериться 50 или 200 микросекунд, если это всё равно ничтожно малое значение? Какая разница, выполняется ли запрос в базу данных за 200 или за 500 микросекунд, если сетевые издержки на порядок больше? Безусловно, есть области программирования, где приходится спуститься на уровень наносекунд и единичных тактов, но в большей своей части программисты не думают такими временными понятиями. Я предлагаю подумать.

Я предлагаю подумать, как выглядела бы работа современного компьютера, если бы каждому такту процессора соответствовала одна секунда в субъективном мироощущении каких-нибудь существ, которые, как мы знаем, и управляют всей техникой («гарантийные человечки» или, на современный лад, «фиксики»). Для таких человечков частота процессора будет равно ровно 1 Hz.

Я пишу эту статью на ноутбуке с восьмиядерным процессором базовой частотой в 2.4 GHz, то есть один такт раз в ~0,4 наносекунды (округление очень грубое). Это значение и будет нашей «компьютерной секундой».

Что же происходит за время, равное такой секунде?

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

Свет проходит около 12 сантиметров (в вакууме).

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

Принцип действия процессора

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

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

Cpu - mind

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

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

Память микропроцессора

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

Выше мы писали о шинах (адресной и данных), а также о каналах чтения (RD) и записи (WR). Эти шины и каналы соединены с памятью: оперативной (ОЗУ, RAM) и постоянным запоминающим устройством (ПЗУ, ROM). В нашем примере рассматривается микропроцессор, ширина каждой из шин которого составляет 8 бит. Это значит, что он способен выполнять адресацию 256 байт (два в восьмой степени). В один момент времени он может считывать из памяти или записывать в нее 8 бит данных. Предположим, что этот простой микропроцессор располагает 128 байтами ПЗУ (начиная с адреса 0) или 128 байтами оперативной памяти (начиная с адреса 128).

Модуль постоянной памяти содержит определенный предварительно установленный постоянный набор байт. Адресная шина запрашивает у ПЗУ определенный байт, который следует передать шине данных. Когда канал чтения (RD) меняет свое состояние, модуль ПЗУ предоставляет запрошенный байт шине данных. То есть в данном случае возможно только чтение данных.

Из оперативной памяти процессор может не только считывать информацию, он способен также записывать в нее данные. В зависимости от того, чтение или запись осуществляется, сигнал поступает либо через канал чтения (RD), либо через канал записи (WR). К сожалению, оперативная память энергозависима. При отключении питания она теряет все размещенные в ней данные. По этой причине компьютеру необходимо энергонезависимое постоянное запоминающее устройство.

Более того, теоретически компьютер может обойтись и вовсе без оперативной памяти. Многие микроконтроллеры позволяют размещать необходимые байты данных непосредственно в чип процессора. Но без ПЗУ обойтись невозможно. В персональных компьютерах ПЗУ называется базовой системой ввода и вывода (БСВВ, BIOS, Basic Input/Output System). Свою работу при запуске микропроцессор начинает с выполнения команд, найденных им в BIOS.

Команды BIOS выполняют тестирование аппаратного обеспечения компьютера, а затем они обращаются к жесткому диску и выбирают загрузочный сектор. Этот загрузочный сектор является отдельной небольшой программой, которую BIOS сначала считывает с диска, а затем размещает в оперативной памяти. После этого микропроцессор начинает выполнять команды расположенного в ОЗУ загрузочного сектора. Программа загрузочного сектора сообщает микропроцессору о том, какие данные (предназначенные для последующего выполнения процессором) следует дополнительно переместить с жесткого диска в оперативную память. Именно так происходит процесс загрузки процессором операционной системы.

Где и для чего используют суперкомпьютеры?

Главная задача суперкомпьютеров — выполнять максимум вычислений за минимум времени. Это полезно для многих областей: начиная от создания лекарств и заканчивая разработками новых продуктов и технологий,

Суперкомпьютер Fugaku изучает пути распространения вируса и его диагностику. Для этого он обрабатывает данные статистики, коэффициент заражения вируса, его состав и модель поведения. А еще ему поручат прогнозирование и симуляцию природных катастроф, разработку и совершенствование «зеленых» технологий.

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

Великобритания выделит $1,6 млрд на создание мощнейшего в мире суперкомпьютера для прогнозирования погоды и климатических изменений.

Министерство энергетики США и Аргоннская национальная лаборатория, совместно с Intel и Cray, обещают в 2021 году представить суперкомпьютер Aurora для исследований в области ядерного оружия. Он будет выполнять 1 квинтиллион операций в секунду и обойдется в $500 млн.

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

В марте этого года астрономы из Технологического университета Суинберна (Австралия) и Калифорнийского технологического университета (США) смоделировали на суперкомпьютере эволюцию Млечного Пути. Для этого они использовали все данные о звездных скоплениях в нашей галактике.

Принцип работы процессорных ядер и многопоточности

В современных операционных системах одновременно работает множество процессов.
Нагрузка от операционной системы на процессор идет по так называемому конвейеру, на который «выкладываются» нужные задачи для ядра. В качестве примера возьмем одно ядро процессора на частоте 4 ГГц с одним ALU (арифметико-логическое устройство) и одним FPU (математический сопроцеесор). Частота в 4 ГГц означает, что ядро исполняет 4 миллиарда тактов в секунду. К ядру по конвейеру поступают задачи, требующие исполнительной мощности, на которые тратится процессорное время.

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

Данный конвейер можно представить, как настоящую сборочную линию на заводе — рабочий (ядро) выполняет работу, поступающую к нему на ленту. И если необходимо взять нужный инструмент, работник отходит, оставляя конвейер простаивать без работы. То есть, исполняемая задача прерывается. Инструментом, за которым пошел рабочий, в данном случае является информация из оперативной памяти или же L3 кэша. Поскольку L1 и L2 кэш намного быстрее, чем любая другая память в компьютере, работа с вычислениями теряет в скорости.

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

Функции CPU

Какие функции выполняет центральный процессор CPU? Главная функция ― управление всеми операциями компьютера: от простейших сложений чисел на калькуляторе до запуска компьютерных игр. Если рассматривать основные функции центрального процессора подробнее, CPU:

  • получает данные из оперативной памяти, выполняет с ними арифметические и логические операции, передаёт их на внешние устройства,
  • формирует сигналы, необходимые для работы внутренних узлов и внешних устройств,
  • временно хранит результаты выполненных операций, переданных сигналов и других данных,
  • принимает запросы от внешних устройств и обрабатывает их.

Больше, больше, больше!

Может получиться так, что разработчики начнут создавать полные контента миры и игроки будут прыгать из одного гигантского города в другой без экрана загрузки и ожиданий. В играх про полёты мы сможем эффектным образом попадать в новый большой регион. В файтингах вроде Dragon Ball или Naruto персонаж после удара будет мгновенно улетать в другой город, а локации сражений будут быстрей сменяться и увеличатся. Мировой Змей в последнем God of War без подвисаний совершит путешествие по девяти мирам скандинавской мифологии. Уровень масштаба увеличится не только в ААА-играх. До сих пор всё это было невозможно или не использовалось.

Игроку неважно, какая консоль победит в новой войне. Каждый для себя сделает правильный выбор: Xbox Series X, PlayStation 5, останется на старых консолях или соберёт дорогой PC. А может это будет Nintendo Switch с массой эксклюзивов c оценками выше 90% на Metacritic и производительностью всего в 1 терафлопс?

Количество терафлопс имеет значение. Но самым важным для игрока всё равно останутся убеждения, предпочтения, выбор друзей и, естественно, игры, которые предложат гиганты.

Adblock
detector