Задать вопрос
@SergeySerge11

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

В принципе весь вопрос. Да нет, Зависит ли линейно скорость кода, от числа потоков в группе? Примеры неожиданно для меня сказали что не особо, и может как быстрее так и медленнее.
Например их максимально 1024 на видеокарте. Я думал что чем больше тем лучше.
Если запускать ядро с 512, то наверное я ожидаю(ожидал), снижение скорости до 2 раз, так как 512 потков простаивают на видеокарте, но этого не происходит? Они не простаивают получается?
И так и 256, размером группы. и 128, а вот дальше уже спад иногда идет, а иногда нет, в зависимости от кода. Например при размере группы 1, до 8 раз скорость падает. Но на 128, нет просадок. тогда что делают другие 900 потоков.

Ответ в принципе я догадываюсь какой, но лучше точно знать. Типа куча групп одновременно запускаются, но я не понимаю, тогда если каждая группа внтури должна выделить максимум разделямой памяти на группу, то как ее хватает на все группы. Например каждая группа, должна загрузить в разделяемую память тайл 64*64 пиксела 40кб информации, А если допустим размер группы, 128, то как тогда происходит. Ее получается намного в 20ки раз больше физически на кристале. и даже в характеристиках нигде найти не могу, что бы узнать сколько shared memory, кроме с пометкой на группу?


Я и так уже от степеней свободы сбился, что малейшее исправление кода, и в 10 раз разница, а тут еще одна.
  • Вопрос задан
  • 145 просмотров
Подписаться 2 Сложный 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Разработчик на C++
    12 месяцев
    Далее
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Яндекс Практикум
    Разработчик C++ расширенный
    12 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@rPman
Производительность кода на gpu сильно зависит от динамики обращения к оперативной памяти, достаточности кеша и аппаратных возможностей железа (сколько банков памяти).

Например последовательный доступ к данным значительно эффективнее случайного.

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

...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Инком Нижний Новгород
от 160 000 до 230 000 ₽
Инком Нижний Новгород
от 160 000 до 230 000 ₽
ITK academy Краснодар
от 220 000 до 300 000 ₽