Как Вы проводите свое время в Интернете?
В основном, ищу нужную информацию
Читаю новости, блоги
Работаю
Развлекаюсь
Играю в онлайн игры
Общаюсь, обмениваюсь информацией
Ищу и скачиваю кино и музыку
Общаюсь в социальных сетях
Немного рекламы...
 
» » » Сколько ядер необходимо современному процессору?

0
Сколько ядер необходимо современному процессору?

Сколько ядер должно быть в современном CPU — два, четыре, восемь или даже шестнадцать? Производители постоянно увеличивают количество процессорных ядер, но насколько это хорошо для конечных пользователей?

Миф

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

Правда

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

 

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

Сколько ядер необходимо современному процессору?

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

 

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

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

 

Сколько ядер необходимо современному процессору? 

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

Источник: 

Также рекомендуем:
Добавить комментарий
Имя:*
E-Mail:
Комментарий:
b
i
u
s
|
left
center
right
|
emo
url
leech
color
|
hide
quote
translit
Вопрос:
Мальчику 18 лет, на дворе 2028 год, в котором году он родился ? (ответ цифрами ХХ10 )
Ответ:*
Наверх Полезные заметки при работе с компьютером - OsOpen.ru
Все права на интеллектуальную собственность (в том числе и авторские) перепечатанных текстов имеют своих авторов и принадлежат только им.
Публикация статьей на данном сайте НЕ является присвоением каких-либо прав на интеллектуальную собственность автора.
Предоставленные материалы, взяты из Интернета из разных свободных источников и будут удалены по первому требованию законного правообладателя.
Администрация сайта не несет никакой ответственности.