Ваше местоположение в сети:
Рубрика:
Путеводитель по интернету

Многоядерность

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

А то услышал я тут диалог двух девушек. Одна с таким умным видом рассказывает: "мне тут новый ноутбук купили, но на нем эта, Виста будет, а то там эти, как их, ядра, и XP уже не тянет." На самом деле, в этих словах может быть доля правды. У компьютера может быть больше 3х гигабайт оперативной памяти, поэтому обычную, 32-битную Windows XP использовать глупо, а 64-битные - это редкость. Но "ядра" - это совсем другая песня...

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

task-manager

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

Многоядерные компьютеры, конечно, не панацея, но "подвесить" многоядерный компьютер существенно сложнее. А суть такого процессора состоит в том, что он действительно имеет несколько "ядер" (по-английски, kernel), каждое из которых может выполнять вычисления независимо от других. Тем самым, один процесс может загрузить только одно ядро, а остальные останутся свободными.

Зачем вам нужен многоядерный компьютер? Ну вот как раз, чтобы он меньше вис. Для этого хватит двух ядер, в случае ноутбука подойдет, например, процессор Intel Dual Core. Нужно ли больше ядер? Возможно, но только если вы собираетесь гонять высокопроизводительные вычисления (например, при кодировании видео), а также для современных игр. Кстати, в последнее время стали продаваться и четырехядерные ноутбуки. Например, если мы рассмотрим ноутбуки Samsung, то увидим недавно появившийся шикарный R780 с процессором CoreI7.

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

Ну вот и все. У вас остались вопросы или комментарии? Буду рад!

Дата: 17 февраля 2010 г., категория: размышления об интернете.

Хотите знать все об интернете?

Введите свой адрес электронной почты чтобы подписаться на обновления!


Уже 1582 постоянных читателя! Присоединяйтесь!


Доставляется при помощи FeedBurner. Никакого спама. Всегда можно отписаться!

← Файловые системы WindowsОбход прокси →

Комментарии

1#

Chief
17 февраля 2010 г. 12:07:52

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

2#

Sander
17 февраля 2010 г. 12:22:16

Напоминает анекдот про нового русского, покупающего навороченный (ну, скажем, на тот момент - Пентиум). Долго собирает самую дорогую конфигурацию, а когда, наконец, его спрашивают, что за задачи будет решать эта машина, отвечает "жена очень любит в тетрис играть - вот сейчас оторвется".
В принципе, если деньги есть, - то, конечно, можно купить что угодно. Но опять-таки, если речь идет об игровом компьютере, то куда важнее качественная видеокарта. Или даже не одна видеокарта. А процессоры так сильно не помогут.
Да.. а я бы, конечно, и от 12-ядерника не отказался...
 

3#

Vladusik
17 февраля 2010 г. 20:28:51

...и тем не менее, главный вопрос все же денежный.
 

4#

Sander
17 февраля 2010 г. 21:07:45

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

5#

Автолюбитель
19 февраля 2010 г. 16:11:17

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

6#

Sander
19 февраля 2010 г. 16:22:12

Ну если эти программы особо активно не работают, то ядра и ни к чему. Лучше памяти побольше!
 

7#

Lidunya
20 февраля 2010 г. 20:23:47

Смысла в более чем 4 ядрах пока нет. Потому что софта, оптимизированного под многояделные системы почти нет.
 

8#

Sander
20 февраля 2010 г. 20:35:36

Для кого нет, а для кого и есть. Мои программы (вычисления в физике высоких энергий) прекрасно используют и 8 и 12 ядер.
 

9#

Дмитрий
23 февраля 2010 г. 13:41:21

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

10#

lubinetsm
4 марта 2010 г. 18:17:03

согласен) возможно в будущем о 8 ядровом проце будут вспоминать так-же как мы вспоминает о компах, которые занимали по площади 3-х комнатную квартиру=)
 

11#

Сёма
6 марта 2010 г. 12:27:16

У меня 2 ядра на компьютере.
 

12#

mult
14 марта 2010 г. 08:21:08

двуядерные/двухпроцессорные компы стали актуальны на win-десктопе с выходом sp2 для winXP, раньше эффективно использовать второе ядро или процессор домашние ос не могли. а вообще - даже на настольком компутере два ядра это всегда лучше чем одно, потому что запущена то не одна программа, а несколько.
 

13#

Mavarik
14 марта 2010 г. 15:58:51

Здравствуйте.
Я хотел написать небольшой комментарий. Переход на многоядерные процессоры связан не только с тем, чтобы увеличить производительность в целом и чтобы компьютер как можно меньше вис.
Самый последний мощный одноядерный процессор от Intel - это Pentium4 с частотой 3.2Ггц и поддержкой технологии гипертрэйдинг (когда ОС воспринимала одноядерный процессор как логический двухядерный). Так вот, частоту дальше, в принципе, не имело смысл повышать для увеличения производительности, это вело к большему потреблению энергии и большему выделению тепла и как следствие перегреву камня. Значит нужно было создавать более мощные системы охлаждения, а это тоже дополнительные затраты. У меня на ноутбуке IRU камень перегревался и просто вырубался.
Вот такие соображения
 

14#

M_rt
16 марта 2010 г. 20:37:47

Почему-то совсем не упомянули трёхядерные процессоры; только про чётные числа ядер и говорили. Почему?
 

15#

Sander
16 марта 2010 г. 20:49:40

M_rt,
сейчас они, конечно, появляются (AMD), но вначале их вообще не существовало.
И вообще, мне такие числа кажутся неестественными. Удобней разрабатывать что-то, являющееся степенью двойки...
 

16#

mult
17 марта 2010 г. 04:59:44

мне кажется 3-ядерные процессоры больше маркетинговый ход, нежели нечто необычное. хоть три, хоть шесть, хоть 16. все равно будет лучше одного ;-)
 

17#

M_rt
25 марта 2010 г. 01:42:23

Sander
16 марта 2010 г. 20:49:40

M_rt,
сейчас они, конечно, появляются (AMD), но вначале их вообще не существовало.
И вообще, мне такие числа кажутся неестественными. Удобней разрабатывать что-то, являющееся степенью двойки...

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

18#

jenix
27 июня 2010 г. 11:01:48

Поразительно запутывающая статья...
Странно для Тебя Sander.
Kernel и Core.? Айя - яй. ;-)

"Нужно ли больше ядер? для современных игр."
Если НЕ слушать малолетних идиотов, то для игр нужны видеоускорители. А процессору достаточно кидать иногда координаты. Есть сравнение GPU и CPU где фирма Nvidia ехидно прокомментировала сравнение INtel своего процессора и процессора Nvidia так "Это тот редкий случай когда Интел признаёт победу над собой с 14-ти кратным превосходством" ;-) Сама Nvidia считает что она превосходит в 100 раз.

"У компьютера может быть больше 3х гигабайт оперативной памяти, поэтому обычную, 32-битную Windows XP, а 64-битные - это редкость. " - перечитайте ещё раз. И сделайте по правилам русского.
 

19#

jenix
27 июня 2010 г. 11:11:47

Господи сколько глупости про троичную систему и неестественность 3-х ядер. и причём тут маркетинг?
Есть технологический процесс - по сути очень грязный и все силы направлены как его вычистить и сделать по чище. Это постоянная борьба. Вы думаете сделали пластину и на ней все процы работают? Какие-то работают, какие-то сбоят, что-то вообще не запускается, потому что в каком-нить 37 технологическом цикле из 100, кислота недотравила бугорок из кремния в 10 нанометров. Вот и получаются 3-х ядерные, 2-хядерные, а делали-то 4-х. Ну не выкидывать же. Это бизнес, а не маркетинг.
 

20#

mult
27 июня 2010 г. 12:43:14

jenix, ух сколько желчи...
сравнивать GPU и CPU, имхо, не совсем корректно, ибо они заточены под разные вещи (CPU универсальней). да, некоторые программы используют и GPU для вычислений, но это скорее исключение из правил. А есть еще платы для аппаратной криптографии. там тоже оочень много вычислений производится. и они выполняются гораздо быстрее чем на универсальном CPU. Чего-то ни одного компутера не видел на GPU от nVidia.

А трехядерный маркетинг от AMD - это маркетинг. Не смотря на то, что часто можно встретить в трехядерниках обычное залоченое четвертое ядро. Вполне себе рабочее, со всеми "дотравленными бугорками кремния". Зато у нас есть три ядра, а у Intel нету.
 

21#

Сандер
27 июня 2010 г. 17:01:00

jenix и mult,
вы, главное, не поругайтесь :)
И вообще, спасибо за комментарии по делу, даже если они меня критикуют или корректируют, мне это нравится.
Я думаю, касательно 3 ядер оба слова правильны. И бизнес, и маркетинг.

Теперь, что я могу ответить.
1) core
 

22#

Lokis
5 сентября 2010 г. 13:19:53

Не могли бы вы объяснить следующую вещь. Как я наслышан есть теорема Винера (надеюсь память мне не изменяет). Так это теорема гласит, что ставить больше двух процов (ядер) вообще бестолково. Быстродействие после 2 уменьшается(сам бы в шоке). 4 ядра-рекламный ход. Есть возможность использовать больше чем два проца, но тогда оборудование должно располагаться не на общей шине (а оно на общей в стандартных компах). Больше двух процов использут на "суперкомпах", но там парятся с их индивидульностью.
Если заблуждаюсь, прошу объяснить.
 

23#

Sander
5 сентября 2010 г. 16:34:46

Lokis, все не совсем так.
Я сам лично писал программы, которые прекрасно выигрывают от четырехядерности, и это был отнюдь не суперкомпьютер.
4-ядерный безусловно лучше 2-ядернового, но не в 2 раза, а несколько меньше, и об этом и говорят подобные теоремы. С ростом числа процессоров производительность растет менее, чем линейно, и со временем кривая сильно загибается к горизонтали. Но как рано она загибается - очень зависит от специфики задачи.
 

Подписаться на: комментарии к статье (rss), комментарии к статье (e-mail)

[*] Авторизоваться при помощи профиля Google (и не только)
Самые активные участники сайта:

Хотите разместить здесь свою аватарку? Авторизуйтесь, загружайте картинку и комментируйте!
Имя:

E-mail (если хотите подписаться на комментарии):

Сайт (не обязательно):

Я - робот! (снимите галочку, если это не так)
Для блоггеров: если вы хотите чтобы ваша ссылка индексировалась поисковыми системами, вам нужно авторизоваться при помощи Google Friend Connect и написать осмысленный комментарий по теме. В таком случае я переведу ваш аккаунт в разряд "trusted". Комментарии пользователей с проверенным аккаунтом не попадают на модерацию, ссылки индексируются, а рядом с ником стоит значок с зеленой галочкой. Да, модерацию могут пройти только ссылки IT-тематики! Внимание: если вы не авторизуетесь, я не смогу сделать вашу ссылку активной даже если мне понравятся ресурс и комментарий!
Комментарий:

Подписаться на  комментарии к статье (rss), комментарии к статье (e-mail)