Соблюдение Правил конференции строго обязательно! Флуд, флейм и оффтоп преследуются по всей строгости закона! За статью можно проголосовать на странице материала.
Member
Статус: Не в сети Регистрация: 31.07.2006 Откуда: Академгородок П Фото: 85
При этом о падении производительности за счёт трансляции враппером ничего не сообщается. Так же не понятно, HIPfy - это программная или аппаратная виртуальная машинка
matocob программная, не виртуальная машинка, a транслятор кода.
Добавлено спустя 4 минуты 31 секунду:
matocob писал(а):
падении производительности за счёт трансляции
падение производительности если и будет, то от различий архитектур ГПУ, только они всегда есть и в ОпенГЛ тоже проявляются. утилита, описанная в статье не предназначена для оптимизации кода.
Advanced member
Статус: Не в сети Регистрация: 07.06.2017 Откуда: Persey omicron
matocob HIP позволяет кодировать в одном языке программирования C++ с одним источником, включая такие функции, как шаблоны, C ++ 11 lambdas, классы, пространства имен и т.д. На платформе NVIDIA CUDA HIP предоставляет заголовочный файл, который кодируется с HIP runtime APIs в CUDA runtime APIs. Файл заголовка содержит в основном встроенные функции и, следовательно, имеет очень низкие накладные расходы - разработчики, кодирующие в HIP, должны ожидать такую же производительность, как и кодирование в CUDA. Затем код компилируется с помощью nvcc, стандартного компилятора C ++, поставляемого с CUDA SDK. Как-то так
Member
Статус: Не в сети Регистрация: 23.02.2013 Откуда: г. Орел
я уже было подумал что они в драйвер замутили перехватчик вызовов суды в опенсл... а так любой код можно оптимизировать с любого равноценного апи на любое равноценное апи было бы желание.
_________________ Мертвый киберпанк с улыбкой мутанта... (:
Member
Статус: Не в сети Регистрация: 03.02.2009 Откуда: Баку
matocob писал(а):
При этом о падении производительности за счёт трансляции враппером ничего не сообщается.
Не думаю, что будет падение в производительности, если и будет, то незначительно. CUDA ядра, это обычные потоковые процессоры, просто nVidia решила дать им имя. AMD тоже пытались дать им имя, например Stream ядра.
Member
Статус: Не в сети Регистрация: 23.02.2013 Откуда: г. Орел
AlarmZone13 ну вообще нв давала название "стреам" (как и амд) не самим ядрам, а кластерам кеплер смх, максвелл смм (загуглил SMM англ. Streaming Maxwell Multiprocessor). амд же называет свои "суда ядра" правильно - алушками, а кластеры "cu" (Compute Units)... если же они где то и использовали "стреам" то было это до выхода гсн, но тогда было много чего интересного например "ати стреам".
_________________ Мертвый киберпанк с улыбкой мутанта... (:
Member
Статус: Не в сети Регистрация: 10.09.2015 Откуда: Санкт-Петербург
AlarmZone13 писал(а):
обычные потоковые процессоры
могут настолько сильно отличаться от других не менее обычных, что разница запросто будет. Так же, как если вы скомпилируете программу для какого-нибудь Интела, она никогда не заработает быстрее от этого на АМД.
Member
Статус: Не в сети Регистрация: 23.02.2013 Откуда: г. Орел
TNT нет на видеокартах разницы в алушках / фпушках как и нет разницы в алушках / фпу в цпу... сами числодробилки одинаковые обвязка может отличаться те кеши объем, скорость, разные уровни, количество циклов на определенные операции тоже самое можно написать и про декодер, планировщик и тд но сути математических юнитов это не меняет поэтому написанный код раз и на всегда запуститься на аналогичном оборудовании в том числе если бы апи суды не было закрытым то любой код прекрасно работал на амдшных картах... собственно "оптимизацию кода под цпу" это учет архитектурных хаков х86 определенных производителей дабы код работал быстрей.
_________________ Мертвый киберпанк с улыбкой мутанта... (:
Member
Статус: Не в сети Регистрация: 10.09.2015 Откуда: Санкт-Петербург
mag_ai писал(а):
TNT нет на видеокартах разницы в алушках / фпушках как и нет разницы в алушках / фпу в цпу... сами числодробилки одинаковые обвязка может отличаться те кеши объем, скорость, разные уровни, количество циклов на определенные операции тоже самое можно написать и про декодер, планировщик и тд но сути математических юнитов это не меняет поэтому написанный код раз и на всегда запуститься на аналогичном оборудовании в том числе если бы апи суды не было закрытым то любой код прекрасно работал на амдшных картах... собственно "оптимизацию кода под цпу" это учет архитектурных хаков х86 определенных производителей дабы код работал быстрей.
Суть процессора - процессор, это понятно Но как раз в тех деталях, что вы перечисляете, и есть вся разница. Если спуститься на самый низкий уровень ее, поятно, уже не будет, но вот пока оно туда будет спускаться, пройдет немало времени и каждый этап на каждом процессоре будет разный. API OpenGL и DirectX известны всем, но одним только AMD и NVIDIA известно то, как его правильно позвать, чтобы оно работало побыстрее именно на их картах. И то, что "оптимизировано" под одно, скорее всего, будет менее выигрышно смотреться на другом. Хотя, в принципе, и то, и то - видеокарты
Member
Статус: Не в сети Регистрация: 23.02.2013 Откуда: г. Орел
TNT писал(а):
API OpenGL и DirectX известны всем
это неправда. у арма своя графика у квалкома своя... у аппла своя... у повервр тоже графика и тоже своя, интел своя графика и есть еще много мелких поставщиков графики. и все эти компании знаю если не про деректх то про опенгл точно.
TNT писал(а):
И то, что "оптимизировано" под одно
нет такого как оптимизация апи - либо работает либо нет и еще один вариант "эмулируется на цпу" и на этом все. конкретно графическую сцену можно оптимизировать под конкретные особенности гпу, но не само апи (например амд слаба в геометрии а нв наоборот - добавить кучу избыточной тесселяции и карты амд начнут захлебываться). апи же просто инструмент который позволяет реализовывать ту самую "тесселяцию" и другие обращения в карте (или конкретным юнитам карты).
_________________ Мертвый киберпанк с улыбкой мутанта... (:
Member
Статус: Не в сети Регистрация: 10.09.2015 Откуда: Санкт-Петербург
mag_ai писал(а):
это неправда. у арма своя графика у квалкома своя... у аппла своя... у повервр тоже графика и тоже своя, интел своя графика и есть еще много мелких поставщиков графики. и все эти компании знаю если не про деректх то про опенгл точно.
Я не имел в виду, что все их на 100% поддерживают. Я имел в виду, что API можно пользоваться.
mag_ai писал(а):
нет такого как оптимизация апи
Конечно, нет. Есть оптимизация сцены под реализацию API (то, что называется implementation).
mag_ai писал(а):
конкретно графическую сцену можно оптимизировать под конкретные особенности гпу
Да, про это я и говорил: вы знаете, какие вызовы и по какой причине с какими значениями лучше или хуже работают. Вы можете чего-то избегать или, наоборот, пихать везде и побольше. Вы даже в некоторых случаях вольны сделать одно и то же разными вызовами.
Сейчас этот форум просматривают: Bing [Bot] и гости: 47
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения