LINUX.ORG.RU
ФорумTalks

Многоядерные процессоры, как прогресс?


0

3

Были предсказания, что вроде закончилась гонка за мегагерцы и компактность. Но Мур никуда не делся, и продолжает плодить транзисторы, соотвественно логическим выводом будет увеличение количества процессоров/ядер.

Но я вот несколько лет назад покупал 4-ядерный процессор, который уже тогда был вполне себе мейнстримом. Как сейчас дело обстоит с процессорами? Как то не видать 16-ядерных процессоров, заполонивших витрины магазинов, все ударились во всякую ерунду, андроиды, айфоны, энергосберегательство. Максимум что видел - 6 ядер. Или я не туда смотрю? Когда у меня будет 32 ядра за 200 баков?

★★★★★

AMD Phenom II X6 1045T всё ещё не продаётся. А я уже заранее планировал его покупку в ноябре-декабре.

iZEN ★★★★★
()
Ответ на: комментарий от tx

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

Legioner ★★★★★
() автор топика
Ответ на: комментарий от B084

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

Legioner ★★★★★
() автор топика
Ответ на: комментарий от iZEN

>AMD Phenom II X6 1045T всё ещё не продаётся. А я уже заранее планировал его покупку в ноябре-декабре.

Зачем оно нужно на домашней (?) машине?

yoghurt ★★★★★
()

ну и в чем проблемы? Процессоры есть, даже для домашних ПК. Ну будут 50процессов ОСи размазываться по 6ти ядрам или 8потокам. Быстро? - Ьыстро.

А нужно ли?

Deleted
()
Ответ на: комментарий от Deleted

А в каком направлении прогрессировать? Я только за 1 процессор с терагерцовой частотой, но не хотят же делать, даже 10 гигагерц не перевалили.

Legioner ★★★★★
() автор топика

Скоро Bulldozer от AMD должен в продажу поступить. Там 8 ядер для десктопа и 16 для сервера.

kranky ★★★★★
()

Были предсказания, что вроде закончилась гонка за мегагерцы и компактность. Но Мур никуда не делся, и продолжает плодить транзисторы, соотвественно логическим выводом будет увеличение количества процессоров/ядер.

Мур говорит только об увеличении производительности, а не о количестве транзисторов. В нехалеме и втором феноме, например, круто оптимизирована работа с памятью.

mv ★★★★★
()
Ответ на: комментарий от Shtsh

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

mv ★★★★★
()
Ответ на: комментарий от Legioner

> А в каком направлении прогрессировать? Я только за 1 процессор с терагерцовой частотой, но не хотят же делать, даже 10 гигагерц не перевалили.

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

Relan ★★★★★
()
Ответ на: комментарий от mv

Ну, про производительность никто не говорил :) Это не та величина, которую можно точно определить цифрами :)

Shtsh ★★★★
()
Ответ на: комментарий от kranky

> Скоро Bulldozer от AMD должен в продажу поступить. Там 8 ядер для десктопа и 16 для сервера.

На бумаге микроархитектура Бульдозера выглядит отлично, особенно аналог Hyper-Threading. Посмотрим, что будет на практике.

Relan ★★★★★
()
Ответ на: комментарий от Shtsh

Ну, про производительность никто не говорил :) Это не та величина, которую можно точно определить цифрами :)

«Гордон Мур пришел к выводу, что при сохранении этой тенденции мощность вычислительных устройств за относительно короткий промежуток времени может вырасти экспоненциально.»

mv ★★★★★
()
Ответ на: комментарий от Legioner

>Когда обычный код на C с pthreads заработают на видеокарте, тогда соглашусь

Обычный си-код не заработает никогда хотя бы из-за отсутствия прямого доступа к памяти. Вот какой-нибудь байткод наверное крутить можно будет

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от Deleted

Сам не пробовал, но таки мысль есть, что UI будет несколько быстрее окошками шевелить.

А у вас оно при фоновой компиляции фризится? У меня даже на двухъядернике такого не наблюдается.

iZEN ★★★★★
()
Ответ на: комментарий от Relan

Я вообще считаю, что начиная с определённого числа ядер будет небольшая революция в мейнстримовых языках, такая же, какая произошла на переходе от С к Java/Python/..., когда быстрые процессоры позволили использовать более мощные абстракции, не слишком переживая по поводу оверхеда в производительности. Так и тут - начиная с определённого количества ядер техники автоматической параллелизации дадут профит больший, чем сопутствующие накладные расходы. Грубо говоря - Clojure, F#, мб изменённый Haskell пойдут в мейнстрим, т.к. писать код с локами и семафорами будет то же самое, что сейчас выделять память malloc-ом: можно, но большинство так не делает.

Legioner ★★★★★
() автор топика

толку то от многоядерности когда софт так и не оптимизирован. вон mplayer через vdpau видео раскодирует аппаратно, но рассинхрон со звуком часто есть. и ничего не поделать. получается бред - mplayer гонит неперрежатое FullHD видео, использует всего несколько процентов но со звуком ерунда. кстати в под вендой народ жалуется на рассинхрон при звуке TrueHD.

tommy ★★★★★
()
Ответ на: комментарий от Legioner

>когда быстрые процессоры позволили использовать более мощные абстракции

ну то есть классика - есть быстрый проц, так мы набыдлокодим и он тормозить начнет.

devl547 ★★★★★
()
Ответ на: комментарий от Legioner

> Так и тут - начиная с определённого количества ядер техники автоматической параллелизации дадут профит больший, чем сопутствующие накладные расходы. Грубо говоря - Clojure, F#, мб изменённый Haskell пойдут в мейнстрим

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

Второй подход — создание средств, упрощающих распараллеливание на традиционных императивных языках. Например Grand Central Dispatch.

Скорее всего оба этих подхода будут сосуществовать.

Relan ★★★★★
()
Ответ на: комментарий от devl547

Здесь важно то, что «быдлокодинг» даёт больше кода и больше функционала при меньшем количестве багов.

Идеальная программа написана на ассемблере, делает то что нужно, потребляет минимум памяти и процессора, не имеет багов и не существует.

Legioner ★★★★★
() автор топика
Ответ на: комментарий от devl547

Преждевременная оптимизация - корень всех зол (ц)

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от devl547

Давно так :)
Собственно, у этого есть и хорошая и плохая стороны.
Хорошая - позволяет прогрессировать процам.
Плохая - скатывает реальное качество ПО в унылое говно.

pekmop1024 ★★★★★
()
Ответ на: комментарий от Kosyak

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

Chaser_Andrey ★★★★★
()
Ответ на: комментарий от devl547

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

pekmop1024 ★★★★★
()
Ответ на: комментарий от pekmop1024

Качество ПО как раз за последние 20 лет выросло. Почитай например какой хитрый алгоритм использовали в 95й винде чтоб не перерисовывать часики каждую секунду

DNA_Seq ★★☆☆☆
()

>Максимум что видел - 6 ядер.

12 ядер * 4 процессора == 48 ядер. 512 Гбайт RAM. Врде как очень даже неплохо.

Led ★★★☆☆
()

> Как то не видать 16-ядерных процессоров

они есть в продаже. тут даже проскакивало пару раз.
но не x86. x86 тоже есть - но пока в лабораториях. Интел, например, вовсю играется с 80-ти ядерными процами.
но тепловыделение там гигантское, нужно оптимизировать и техпроцесс уменьшать.
да, а еще дружно вспоминаем про видеокарты :)

isden ★★★★★
()
Ответ на: комментарий от pekmop1024

См. про преждевременную оптимизацию. Если экономить каждый такт процессора то в итоге получиться Win95/98

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от isden

Ну да, в будущей GTX580 - вообще 512 потоковых процессоров. Правда, что под пп понимают нвидиевцы, одним им известно.

pekmop1024 ★★★★★
()
Ответ на: комментарий от DNA_Seq

>Почитай например какой хитрый алгоритм использовали в 95й винде чтоб не перерисовывать часики каждую секунду

А ссылку можно? А то интенресно даже стало...

drakmail ★★★★
()
Ответ на: комментарий от DNA_Seq

> См. про преждевременную оптимизацию. Если экономить каждый такт процессора то в итоге получиться Win95/98

Win9x - это набор костылей над системой (по сути) сорокалетней давности. Что ты от нее хочешь? Костыли никогда нормально не работают.

Я не говорю, что надо все на ассемблере писать - это крайность. Но и нынешние жабодотнеты - это 100% быдлокод by design, на этом просто нельзя иначе ничего сделать. Говно, на самом деле, но вполне соответствует технологическому этапу бурного роста: сейчас иначе просто невозможно.

pekmop1024 ★★★★★
()
Ответ на: комментарий от isden

Оптика, может ещё что.

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

Legioner ★★★★★
() автор топика
Ответ на: комментарий от pekmop1024

> Но и нынешние жабодотнеты - это 100% быдлокод by design

Почему?

Relan ★★★★★
()
Ответ на: комментарий от pekmop1024

> А это вполне обозримое будущее.

Скорее бы) Жду второе рождение демосцены.

devl547 ★★★★★
()
Ответ на: комментарий от Legioner

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

а большие кэши на кристалле для чего по-твоему придумали? :)

isden ★★★★★
()
Ответ на: комментарий от Deleted

Пока программисты не научатся писать код нормально - нужно. А не гоняться за профитом.

Mobyshvein
()
Ответ на: комментарий от pekmop1024

С тем же успехом можно заявить что любой исходник на си - быдлокод. А что? Компилятор си писался под узкую прикладную задачу а все что наворотили сверху - набор костылей. В винде гравику в ядро внесли не потому что не читали Кнута и Таненбаума а потому что экономили каждый такт процессора. Чем сложнее программа тем более вероятна что она глючит. KISS еще никто не отменял

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от Legioner

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

Dorif ★★
()
Ответ на: комментарий от Legioner

Про выделение памяти malloc()- а как ещё выделять память под динамические переменные в C?

Dorif ★★
()
Ответ на: комментарий от Dorif

>Почему?

man a500/a1200
man плата акселератора
man оптимизация
man демосцена

//Просто потому что на амигах код на порядок лучше оптимизируют.

devl547 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.