Часовой пояс: UTC + 3 часа




Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 76 • Страница 2 из 4<  1  2  3  4  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 
Прилепленное (важное) сообщение

роБОТяга
Статус: Не в сети
Регистрация: 05.07.2005
Ждём Ваших отзывов о материале.
Соблюдение Правил конференции строго обязательно!
Флуд, флейм и оффтоп преследуются по всей строгости закона!



Партнер
 

Member
Статус: Не в сети
Регистрация: 01.03.2006
panela писал(а):
Полезно только на серверах. А в большинстве "домашних" приложений зависимость скорости от кол-ва ядер нелинейная, и уже увидеть разницу 16 и 32 ядер в какой-нибудь будущей игре будет трудно (неполучится распараллелить на 32 независимых потока).
ИМХО: в настольных ПК кол-во ядер не превысит 8 - дальше - бестолку.


Ну, почему же бестолку? Если в игре использовать не параллелизм задач, а параллелизм данных, то толк очень даже есть. Т.е. вместо "ядро для обработки звука, ядро для обработки физики, ядро для рендеринга и т.д." будет "расчёт физики для 50 осколков разбитого стекла на 50 ядрах и т.д.".


 

Member
Статус: Не в сети
Регистрация: 05.06.2006
Откуда: Вологда
UT2007 писал(а):
Конечно, я же представил себе

Это Ваше представление или мечты?
Больше похоже на второе.
Впрочем, о чем ещё могут мечтать фанаты интела?..

_________________
Я ничьих мнений не разделяю: я имею свои.


 

Member
Статус: Не в сети
Регистрация: 18.12.2006
Давайте посмотрим, какие задачи требуется ускорять приростами потоков.
1. Архивирование. Тут и тысяча потоков - не проблема, легко расширяется.
2. Аудио и видео. См. пункт 1.
3. Прочая обработка изображений (фотошоп, 3д студия...) - сложнее, ибо надо оптимизировать каждый отдельный
фильтр, но тоже вполне возможно.
4. Работа с базами данных. Не очень хорошо масштабируется, но очень давно оптимизируется(благо запускаются такие задачи в основном на серверах), поэтому с 16-тью потоками всё будет в порядке.
5. Научные расчёты. 50/50 - некоторые легко распараллелить по самое не хочу, другие больше одного потока не приемлют.
6. Игры, главный сегодняшний пожиратель производительности и главная проблема такого метода, ибо создаются они достаточно короткое время, большая часть которого уходит на то, чтобы "ента бандурина зафурычила и не бажила", и оптимизация даже на два потока даётся с трудом. И если лицензируемые движки и вторые, третьи и последующие части игр ещё будут успевать оптимизировать, то для новых оригинальных игрушек ситуация достаточно плачевна.


 

Junior
Статус: Не в сети
Регистрация: 29.11.2006
Откуда: Россия, Омск
Цитата:
А в большинстве "домашних" приложений зависимость скорости от кол-ва ядер нелинейная, и уже увидеть разницу 16 и 32 ядер в какой-нибудь будущей игре будет трудно (неполучится распараллелить на 32 независимых потока).

Тим Суини, который пишет Unreal Engine 4 (уже больше 2 лет) говорил, что движок будет поддерживать до 64 процессоров... правда он и выйдет только к 2010 году...
Так что это зависит от прямоты рук софто-игро-писателей....


 

Member
Статус: Не в сети
Регистрация: 23.03.2006
Откуда: Киев
hexy писал(а):
panela писал(а):
Полезно только на серверах. А в большинстве "домашних" приложений зависимость скорости от кол-ва ядер нелинейная, и уже увидеть разницу 16 и 32 ядер в какой-нибудь будущей игре будет трудно (неполучится распараллелить на 32 независимых потока).
ИМХО: в настольных ПК кол-во ядер не превысит 8 - дальше - бестолку.


Ну, почему же бестолку? Если в игре использовать не параллелизм задач, а параллелизм данных, то толк очень даже есть. Т.е. вместо "ядро для обработки звука, ядро для обработки физики, ядро для рендеринга и т.д." будет "расчёт физики для 50 осколков разбитого стекла на 50 ядрах и т.д.".


При расчете 50 осколков разбитого стекла на 50 ядрах. Хотел бы я увидеть как ты его эфективно распараллелишь. Ведь для расчета траектории каждого осколка мы должны знать данные о других 49. Следовательно есть какая либо критическая секция. И пока одно ядро в нее пишет - остальные ждут (могут только читать)
Добавлено спустя 5 минут, 2 секунды
SinsI писал(а):
Игры, главный сегодняшний пожиратель производительности и главная проблема такого метода, ибо создаются они достаточно короткое время, большая часть которого уходит на то, чтобы "ента бандурина зафурычила и не бажила", и оптимизация даже на два потока даётся с трудом.

+1 :D
Сам работаю в этой области - у нас все обстоит именно так


Последний раз редактировалось panela 08.01.2007 18:41, всего редактировалось 1 раз.

 

Member
Статус: Не в сети
Регистрация: 08.01.2005
Откуда: Москва
UT2007 писал(а):
Конечно, я же представил себе 16-ядерный "десктоп" для "энтузиастов" в стиле AMD - такой 4-хсокетный монстрик, кушающий 1000W в простое. Сразу сильнейшие позывы... чуть всю клаву не... заоптимизмил... Wink
:x сначала хотя бы ознакомился с этим http://overclockers.ru/hardnews/24205.shtml

_________________
Do you folks like coffee?
Real coffee? From the hills of Colombia?


 

Member
Статус: Не в сети
Регистрация: 10.02.2005
Откуда: Rishon , Israel
panela +2
Цитата:
"ента бандурина зафурычила и не бажила"

я работаю в области электроники , а не в программирования , но хочу вас расстроить - у всех это так :)
так что не ждите чудес от новых процессоров, их тоже люди делают


 

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

Так есть же уже Intel C++ Compiler :)


 

Member
Статус: Не в сети
Регистрация: 03.10.2006
Откуда: Москва ЦАО
H(CHCl11B11)

Я читал, но это все маркетинговые фантазии на уровне слайдов пока. Если даже брать Fusion, как нечто заявленное в roadmap-е на 2009-й, то кто-нибудь видел прототип? Да ладно, фиг с ним с прототипом, ну хотя бы - сколько ядер у него будет, какие частоты?

_________________
w1cK3d 51cK
Spread Firefox: Take back the web!


 

Member
Статус: Не в сети
Регистрация: 18.12.2006
Michael1976 писал(а):
я работаю в области электроники , а не в программирования , но хочу вас расстроить - у всех это так :)

Отнюдь не у всех. В коммерческих приложениях эта формула часто расширяется до "зафурычила, не бажила и не сильно проигрывает конкурентам по производительности", т.е. оптимизации входят в список обязательных задач. К тому же, если у игр 5-6 выпускаемых патчей - практически максимум, то жизненный цикл того же фотошопа позволяет без проблем выпускать десятки новых улучшенных версий.


 

Member
Статус: Не в сети
Регистрация: 28.11.2003
Откуда: москва
оптимизация - это конечно круто, но закон Амдала никто не отменял.. так что 16-ядер это ТОЛЬКО маркетинг. приемущество 16-ядерников на 4-ядерниками будут ничтожными.
Добавлено спустя 8 минут, 14 секунд
SinsI писал(а):
И если лицензируемые движки и вторые, третьи и последующие части игр ещё будут успевать оптимизировать, то для новых оригинальных игрушек ситуация достаточно плачевна.

Как раз наоборот.. Оптимизировать что-то чтобы оно лучше параллелилось сложно. Легче с нуля написать. Так что единственная надежда на новые игровые движки. Производители процов должны будут оооочень убедительно уговаривать игрописателей уделять внимание параллелизму.


 

Заблокирован
Заблокирован
Статус: Не в сети
Регистрация: 09.07.2006
Откуда: москва
в своё время виндовс NT смогли заставить нормально работать на на 30-ти процессорной машине (sequent) Цитата: "Ядро виндовс NT позволяет полностью поддерживать управление и распределение потоков на таких системах. И Вам не придётся делать что-то особенное в своём коде, что бы задействовать преимущества многопроцессорной машины." (Джефри Рихтер, "Виндовс для проффессионалов", ISBN 5-7502-0010-8 , 1995 год)
А когда в америке было модно заниматься мат моделированием, то там выпускались компы содержащие более сотни цпу, и ничего...В играх так вообще многопоточность благо и во всю используется, каждый монстр своим потоком идёт независимым от других...т.е. убил его, и игре не надо ниче делать, кроме как закрыть поток который считал убитого монстра...
в вычислениях в принципе вообще давно известно, что производительность (мегафлопы) растёт как натуральный логарифм от кол-ва цпу..., так что для математики больше 4-х ядер нафик не нужно)
имхо

_________________
http://people.overclockers.ru/razgelday/records


 

Member
Статус: Не в сети
Регистрация: 28.11.2003
Откуда: москва
rzgd писал(а):
В играх так вообще многопоточность благо и во всю используется, каждый монстр своим потоком идёт независимым от других...т.е. убил его, и игре не надо ниче делать, кроме как закрыть поток который считал убитого монстра...

Да пожалуй только это они и смогут сделать.. Будет тонна монстров бегать.. И что? Между собой то они взаимодействовать вообще не смогут.. Скорее всего будут вообще друг через друга проходить :weep:
Ни о каком увеличении интеллекта вообще речь не идёт.


 

Member
Статус: Не в сети
Регистрация: 23.03.2006
Откуда: Киев
Цитата:
каждый монстр своим потоком идёт независимым от других...

Где ж ты такую игру видел ?
Цитата:
убил его, и игре не надо ниче делать, кроме как закрыть поток который считал убитого монстра...

Да, а еще как минимум обработать список квестов/миссий/... , плюс граф. движок (чистка лишних текстур и т.д).
Если б все было так красиво, как ты пишешь, уже давно в играх прирост от двухядерности был 80-90% (если конечно видео позволяет). А то вот в Q4 (движок которого писали далеко не самые галимые программеры :D ), прирост от 2 ядер чуть менее 50% всего-то


 

Member
Статус: Не в сети
Регистрация: 23.11.2006
hexy писал(а):
panela писал(а):
Полезно только на серверах. А в большинстве "домашних" приложений зависимость скорости от кол-ва ядер нелинейная, и уже увидеть разницу 16 и 32 ядер в какой-нибудь будущей игре будет трудно (неполучится распараллелить на 32 независимых потока).
ИМХО: в настольных ПК кол-во ядер не превысит 8 - дальше - бестолку.


Ну, почему же бестолку? Если в игре использовать не параллелизм задач, а параллелизм данных, то толк очень даже есть. Т.е. вместо "ядро для обработки звука, ядро для обработки физики, ядро для рендеринга и т.д." будет "расчёт физики для 50 осколков разбитого стекла на 50 ядрах и т.д.".

Параллелизм данных!? Хм, когда я предложил будучи студентом приглашенным на заседание науного совета в РАН, я думал меня уже ни кто не пригласит :( Нет в исключительных случаях такое возможно (ну очень большие массивы с примитивными алгоритмами обработки), но крайне мало таких задач.
.rain писал(а):
UT2007 писал(а):
Кластерные системы - все-таки как правило чистые вычисления, у которых с десктопными задачами (мультимедиа, игры, архивирование и т.п.) мало общего.


Подход тот же.

Да как сказать. Многие "чистые вычисления" хрен распараллелишь. Задача ведь не только разбить задачу на несколько потоков. Это ещё худо бедно посильно. Сложно их между собой согласовать. Они и выполняются за разное время, требуют разное количество ресурсов, избежать конфлитов уменьшающих, а не увеличивающих производительность ой как не легко.


Последний раз редактировалось Спец 08.01.2007 22:46, всего редактировалось 2 раз(а).

 

Member
Статус: Не в сети
Регистрация: 18.08.2006
UT2007

Cell - тоже
UT2007 писал(а):
нечто заявленное в roadmap-е на 2009-й
?? Али, все уже известно?


 

Заблокирован
Заблокирован
Статус: Не в сети
Регистрация: 09.07.2006
Откуда: москва
panela писал(а):
прирост от 2 ядер чуть менее 50% всего-то


если вы дочитали мой предыдущий пост до конца, то там как раз об этом и написано, прирост от двух ядер и должен быть средний чуть менее 50% (идеальный случай ln(2) = 0.7 прироста) великолепный результат, кто сможет пусть попробует сделать больше
panela писал(а):
Где ж ты такую игру видел ?

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

panela писал(а):
Следовательно есть какая либо критическая секция. И пока одно ядро в нее пишет - остальные ждут (могут только читать)


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

_________________
http://people.overclockers.ru/razgelday/records


 

Member
Статус: Не в сети
Регистрация: 23.11.2006
panela писал(а):
Цитата:
А то вот в Q4 (движок которого писали далеко не самые галимые программеры :D ), прирост от 2 ядер чуть менее 50% всего-то

Прикол в том, что от 2-х кратного роста частоты, приросто тоже не 100% и взависимости от роста абсалютных значений всё меньше и меньше. Нет понятно, что что через какое-то время нас ждут тысячи ядер в одной настольной системе и сотни в таблетках. Альтернативы пока не видно, но путь это не многим "прямее", чем задирание частот. Жаль, но такова жизнь :(


 

Member
Статус: Не в сети
Регистрация: 23.03.2006
Откуда: Киев
rzgd писал(а):
panela писал(а):
прирост от 2 ядер чуть менее 50% всего-то


если вы дочитали мой предыдущий пост до конца, то там как раз об этом и написано, прирост от двух ядер и должен быть средний чуть менее 50% (идеальный случай ln(2) = 0.7 прироста) великолепный результат, кто сможет пусть попробует сделать больше

Я ж о том же. И толку от 16 ядер тогда ?
А на серверах при множестве примитивных запросов к данным можно получить зависимость, близкую к линейной.
А для десктопов - макс 4-8 ядер. И постоянно гнать электронщиков: пусть придумывают как наращивать частоты, либо архитектуру меняют - ато опять застой будет.


 

Junior
Статус: Не в сети
Регистрация: 08.01.2007
Цитата:
Да как сказать. Многие "чистые вычисления" хрен распараллелишь. Задача ведь не только разбить задачу на несколько потоков. Это ещё худо бедно посильно. Сложно их мжду собой огласовать. Они и выполняются за разоне время, требуют разное количество ресурсов, избежать конфлитов уменьшающих, а не увеличивающих производительность ой как не легко.

В общем - да, но это еще немного не тот уровень/объем вычислений...

http://www.top500.org/static/lists/2006 ... Poster.png
Тут ядер/процессоров/нод побольше, тем не менее, такое существует и явно не "для мебели" :)

_________________
Присоединяемся к акции массового перехода на Jabber - самую современную сеть обмена мгновенными сообщениями! http://jabberworld.info


Показать сообщения за:  Поле сортировки  
Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 76 • Страница 2 из 4<  1  2  3  4  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 26


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan