Как определить сколько операций может выполнить процессор

Что такое тактовая частота?

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

Если вы хотите узнать тактовую частоту своего компьютера, откройте меню «Пуск» (или нажмите клавишу Windows*) и введите текст «О системе». Модель и тактовая частота вашего процессора будут показаны в графе «Процессор».

Что такое тактовая частота?

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

Ваш процессор каждую секунду обрабатывает множество команд различных программ (в форме низкоуровневых расчетов, таких как арифметические операции). Тактовая частота определяет количество циклов, выполняемых процессором за секунду и измеряется в гигагерцах (ГГц).

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

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

Процессор с тактовой частотой 3,2 ГГц выполняет 3,2 млрд. циклов в секунду. (В старых процессорах тактовая частота измерялась в мегагерцах или миллионах циклов в секунду).

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

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

Источник

Как определить сколько операций может выполнить процессор

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

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

Начнем с того, что каждый современный процессор построен на физических ядрах с определенной частотой. Допустим, 1 ядро имеет тактовую частоту в 3 ГГц, т.е. может выполнить 3 млрд вычислительных операций за секунду (такт). Но современные ОС (Windows, Linux, MacOS) запускают более 3 млрд процессов, т.е. пользователь начинает сталкиваться с таким понятием как прерывание: ЦП физически не успевает обрабатывать все сразу и начинает переключаться на самые приоритетные задачи.

Логика здесь элементарная: присмотреться к многоядерным и многопоточным решениям. Разгон не дает линейного прироста в производительности, иначе такие гиганты как Intel и AMD выпускали бы процессоры на 5–6 и более ГГц.

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

Многопоточность и все о ней

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

Эта технология имеет название HyperThreading (Intel) или SMT (AMD).

Многопоточность у красных появилась совсем недавно, с выходом чипов Ryzen на совершенно новом техпроцессе. Что это такое – тема отдельной статьи.

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

Недостаток технологии заключается в следующем:

  • оба потока обращаются к единой кэш-памяти 2 и 3 уровней;
  • тяжелые вычислительные процессы могут вызвать конфликт в системе.

Знакомы с понятием Turbo Boost? Процесс кратковременно повышает частоту процессора на несколько сотен мегагерц в особо сложных сценариях, чтобы вы не испытывали проблем при обработке сложных данных.

Сколько нужно ядер и потоков современному обывателю?

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

  • По-хорошему, для офисной работы будет вполне достаточно 2‑ядерных ЦП, но при этом учитывайте, что одновременно работать с браузером, текстовыми редакторами, почтовым клиентом и проигрывателем, не получится – система попросту не справится. А если использовать топологию 2 ядра/4 потока, то ситуация в корне преображается – рук то больше.
  • Игры требуют уже больше ресурсов. Начнем с того, что современные проекты очень падки на ресурсы чипа. Взять к примеру, ту же GTA V или Watch Dogs 2: они способны выжимать все соки из любого камня, поскольку параллельно отрисовывают сцены игры (скрипты), просчитывают окружение, прорабатывают звук, поведение искусственного интеллекта и не только. И все эти процессы еще нужно синхронизировать надлежащим образом.
  • А если копнуть в задачи типа программирования, рендеринга и профессиональной работы с графики, то видно, что здесь и 4‑ядерные/8‑поточные чипы начинают захлебываться и работают на износ.
Читайте также:  ArmA 2 Reinforcements Учебный лагерь Задание Е13 Управление группами

Вместо итогов

Практика показывает, что современный универсальный ПК должен иметь в своем распоряжении как минимум 4 ядра/8 потоков, чего будет достаточно для большинства задач, связанных с обработкой данных. Хотя варианты из серии 6/12 выглядят более обещающими по той причине, что стоят они не намного дороже, а пользы от них больше.

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

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

Источник

Процессор

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

Центральный процессор состоит из арифметико-логического устройства (АЛУ), которое содержит схему, манипулирующую данными, и устройства управления, которое содержит схему, координирующую деятельность машины (см. рис. 1.1).

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

Важной характеристикой процессора является его производительность (количество элементарных операций, выполняемых им за одну секунду), которая и определяет быстродействие компьютера в целом. В свою очередь, производительность процессора зависит от двух других его характеристик — тактовой частоты и разрядности. В машине находится схема, которая называется тактовым генератором, котораягенерирует импульсы, использующиеся для координирования действий машины. Тактовая частота определяет число тактов работы процессора в секунду. Соответственно чем выше тактовая частота, тем меньше длительность выполнения операций и тем выше производительность компьютера. Под тактом понимается чрезвычайно малый промежуток времени, измеряемый микросекундами, в течение которого может быть выполнена элементарная операция, например сложение двух чисел. Современный персональный компьютер может выполнять миллионы и миллиарды таких элементарных операций в секунду. Для числового выражения тактовой частоты используется единица измерения частоты — мегагерц (МГц)=миллион тактов в секунду, гигагерц (ГГц)= млрд. операций в секунду. Процессор 8086, произведенный фирмой Intel для персональных компьютеров IВМ, мог выполнять не более 10 млн. операций в секунду, т. е. его частота была равна 10 МГц. Тактовая частота современных микропроцессоров составляет гигагерцы.

Разрядность процессора определяет размер минимальной порции информации, над которой процессор выполняет различные операции обработки. Эта порция информации, часто называемая машинным словом, представлена последовательностью двоичных разрядов (бит). Процессор в зависимости от его типа может иметь одновременный доступ к 8, 16, 32, 64 битам. С повышением разрядности увеличивается объем информации, обрабатываемой процессором за один такт, что ведет к уменьшению количества тактов работы, необходимых для выполнения сложных операций. Кроме того, чем выше разрядность, тем с большим объемом памяти может работать процессор. Первые микропроцессоры (1971 г. — фирма Intel) имели разрядность 4 бит, тактовую частоту 108 КГц и способность адресовать 640 байт основной памяти. Современные компьютеры оснащаются 32-разрядными процессорами, и при этом их оперативная память обычно составляет 2 – 16 Гбайт.

Основным устройством обработки информации в ЭВМ является арифметико-логическое устройство, входящее в состав процессора. Его основой является электронная схема, составленная из большого числа транзисторов, называемая сумматором. Сумматором выполняются простейшие логические и арифметические операции над данными, представленными в виде двоичных кодов (нулей и единиц). Арифметические операции: изменение знака, сложение, вычитание, умножение, деление. К логическим операциям относятся логическое умножение (операция «и»), логическое сложение (операция «или») и логическое отрицание (операция «не»). На основе этих трех операций можно производить арифметические действия над числами, представленными в виде нулей и единиц.

Теоретической основой для выполнения логических операций являются законы, разработанные еще в 1847 году ирландским математиком Джорджем Булем (1815-1864), известные как булева алгебра, в которой используются только два числа — 0 и 1. Вначале считалось, что эти работы Буля никому не нужны, и их автор подвергался насмешкам. Однако в 1938 году американский инженер Клод Шеннон положил булеву алгебру в основу теории электрических и электронных переключательных схем — сумматоров, создание которых и привело к появлению ЭВМ, способных автоматически производить арифметические вычисления.

Читайте также:  КАК ПРОИЗВЕСТИ ЧИСТКУ ПК И ЗАМЕНИТЬ ТЕРМОПАСТУ НА ПРОЦЕССОРЕ

Все остальные операции, сводятся к большому числу простейших арифметических и логических операций, аналогично тому, как операцию умножения можно свести к большому числу операций сложения. [2, 3, 8]

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

1) взять одно из значений из памяти и поместить его в регистр;

2) взять другое значение из памяти и поместить его в другой регистр;

3) активировать схему сложения, на входе которой будут данные из регистров;

4) сохранить результаты в памяти;

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

Все машинные команды можно разделить на три группы:

— команды передачи данных (предписывают перемещение данных из одного места в другое. Как пример, шаги 1,2 (команды загрузки) и 4 (команда сохранения) вышерассмотренного алгоритма. В команды передачи данных входят инструкции для связи центрального процессора с внешними устройствами);

— арифметико-логические команды (в примере шаг 3. К этим командам относятся и команды сдвига);

— команды управления (управляют процессом выполнения программы. В примере шаг 5. Это команды перехода — условного и безусловного — и ветвления). [1]

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

Источник



Технологии многопоточности процессоров: принцип работы и сферы применения

Физические ядра, логические ядра, технологии многопоточности — все это разрабатывалось инженерами для увеличения производительности компьютерного железа, требования к которому постоянно растут. Программы и игры требуют все больше ресурсов. Как же производители процессоров увеличивают мощность своих детищ? Процессор является «сердцем» компьютера и выполняет вычисления, необходимые для работы софта. Модели CPU отличаются между собой даже в рамках одного семейства. Например, Intel Core i7 отличается от i5 технологией многопоточности под названием «Hyper-Threading», о которой далее пойдет речь (Core i3, i9, и некоторые Pentium также обладают данной технологией).

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

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

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

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

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

Способы увеличения производительности процессоров

Разгон

При увеличении частоты ядра повышается количество исполняемых операций за секунду. Казалось бы, с возрастанием производительности процессора проблемы должны исчезнуть. Но все не так просто, как хотелось бы думать. Прирост от увеличения частоты ЦП нелинейный. Множество процессов все еще делят одно ядро между собой и обращаются к памяти. Кроме того, не решается проблема с кэш-промахами и прерываниями операций, поскольку объем кэша от разгона не изменяется. Разгон — не самый лучший способ решения проблемы нехватки потоков. В пример можно привести всю ту же сборочную линию: рабочий увеличивает темп работы, но по-прежнему не умеет собирать два и более заказа одновременно.

Увеличение количества потоков на ядро

В процессорах Intel данная технология носит название Hyper-Threading, а в процессорах от Amd — SMT. Производители добавляют еще один регистр для работы со вторым конвейером. Пока один поток простаивает, ожидая нужные данные, свободная вычислительная мощность может быть использована вторым потоком. На кристалл же добавлен еще один контроллер прерываний и набор регистров.

Читайте также:  Ремонт мобильного телефона что обычно ломается и как это чинить

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

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

Именно по этой причине процессоры серии i7 «горячее» и имеют больше кэша по сравнению с i5. Использование технологии многопоточности может принести примерно до 30 % прироста производительности. Все это применимо как к Intel Hyper-Threading, так и к AMD SMT, поскольку технологии во многом схожи. Может возникнуть вопрос: «Если можно добавить второй поток, то почему бы не добавить третий и четвертый?» Это реализуемо, но не имеет смысла, поскольку кэш одного ядра достаточно мал для большего количества потоков и прироста производительности практически не будет.

Увеличение количества ядер

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

Сферы применения многопоточных процессоров

С развитием компьютерных технологий перечень программ, использующих многопоточность, неуклонно растет. Это дает огромный простор разработчикам для создания нового софта и игр. Например, сейчас каждый современный triple-A проект оптимизирован для многопоточных процессоров, что позволяет наслаждаться игрой, получая высокий уровень fps на многоядерном CPU.

Еще больше распространены многоядерные системы в среде разработчиков. Программы для 3D-моделирования, монтажа видео и создания музыки требуют параллельного выполнения большого количества задач, с чем хорошо справляются системы с Hyper-Threading или SMT. В операционных системах мощность одного потока может тратиться на фоновые задачи (Skype, браузер, мессенджер), в то время как остальные задействуются для тяжелой игры или программы.

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

Источник

Как оценить производительность процессора (ЦП), на какой частоте он работает при нагрузке (тестирование)

Одна и та же модель ЦП в разных ПК и ноутбуках может работать с разной частотой (и обеспечивать разную производительность). Чтобы узнать реальную производительность и сравнить ее с другими ЦП (этой же модели и других) — необходимо прибегнуть к спец. тестам.

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

Предупреждение: для объективных результатов перед любыми тестами закройте все ресурсоёмкие приложения (игры, редакторы, торренты и пр.).

Примечание!

Если вы знаете модель своего процессора и хотите сравнить его с другой конкретной моделью — рекомендую вот эту заметку. Благодаря спец. таблицам и рейтингам можно узнать на сколько процентов (%) один ЦП быстрее другого.

Для быстрой оценки (в баллах Windows) всех компонентов ПК в целом — рекомендую этот материал.

Способы узнать реальную производительность ЦП

Вариант 1: AIDA 64 + HWMonitor (узнаем температуру и реальную частоту)

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

Для подобного теста рекомендую две утилиты: AIDA 64 + HWMonitor (их можно загрузить тут). Запустить их нужно одновременно обе.

Далее в AIDA 64 перейти в меню «Сервис» и нажать по «Тест стабильности системы».

Сервис — тест стабильности / AIDA 64

После, в той же AIDA 64 поставьте галочку напротив пункта «Stress CPU» и нажмите кнопку «Start». Затем внимательно наблюдайте показания в HWMonitor — частоту (Clocks) и температуру (Temperatures).

Примечание: в моем случае (см. скрин ниже) удалось выяснить, что ЦП работал на частоте 1694 Mhz (хотя потенциально он мог держать больше 3000 Mhz). Как выяснилось, виной тому были настройки электропитания — после их сброса, ЦП стал «шустрее».

Источник