Как известно, открытый драйвер RadeonSI для GPU семейства Radeon на основе GCN от компании AMD все чаще показывает производительность, сравнимую с проприетарным драйвером и при этом не страдает некоторыми проблемами и особенностями проприетарного драйвера, на данный момент полностью поддерживая стандарт OpenGL 3.3, что зачастую делает этот драйвер интересным вариантом даже для любителей игр.Менее известен тот факт, что можно получить существенный дополнительный прирост производительности открытого драйвера в ряде 3D-программ очень простым методом.
В RadeonSI по умолчанию отключен Hyper-Z, из-за проблем с стабильностью в некоторых программах с некоторыми GPU. Тем не менее, по состоянию на данный момент (MESA 10.3-devel, ядро Linux 3.17-rc1) большинство подобных сочетаний GPU и программ работает вполне стабильно.
В результате можно получить достаточно существенный прирост производительности в 3D, выставив переменную окружения R600_DEBUG=hyperz для активации hyper-z. Как [[http://www.phoronix.com/scan.php?page=article&item=amd_radeo... показали]] тесты ресурса Phoronix, в зависимости от программы прирост составляет от 10 до 50%.
URL: http://www.phoronix.com/scan.php?page=article&item=amd_radeo...
Обсуждается: https://www.opennet.ru/tips/info/2846.shtml
Phoronix? О нет!.. :)
Любка? :)
Было бы просто чудесно, если бы в этом руководстве еще кратко пояснялось, что такое hyper-z, и почему для radeonsi переменная окружения называется R600 - это ведь другой драйвер.
Кстати, а почему ядро 3.17-rc1? Я не вижу в гите никаких изменений для radeon'а относительно 3.16
>Было бы просто чудесно, если бы в этом руководстве еще кратко пояснялось, что такое hyper-zЫ "руководство" - гуглоперевод с фороникса.
> hyper-zНу да, сложно догадаться где посмотреть :) https://en.wikipedia.org/wiki/HyperZ
> почему для radeonsi переменная окружения называется R600 - это ведь другой драйвер.
RadeonSI - форк драйвера R600g несколько лет назад. Просто GCN отличается от VLIW-based достаточно для того чтобы разработчики не желали видеть это как один драйвер и разнесли на два разных, живущих относительно независимо. Но в молодости это был один и тот же драйвер.
> Кстати, а почему ядро 3.17-rc1?
Потому что последнее заслуживающее внимания ядро на момент написания совета. С 3.16 тоже никаких особых проблем c hyper-z нет. И даже с 3.15. Проблемы вылезают только в некоторых конфигах с некоторыми GPU в некоторых программах. С высокой вероятностью у вас тоже не будет проблем. Но - без гарантий. Поэтому и выключено по дефолту: учитывая число юзерей - энное количество багрепортов все-таки сыпется.
> Я не вижу в гите никаких изменений для radeon'а относительно 3.16.
Вообще-то IIRC они были. Но hyper-z не касались. В основном там управление VM (GPUшной) корежат и что там еще. С достаточно переменным успехом, я бы сказал.
А ещё на NVIDIA есть __GL_THREADED_OPTIMIZATIONS=1. Тоже отключен по умолчанию из-за проблем со стабильностью. Например Metro: Last Light с ним не стартует. Возможно что-нибудь ещё, кроме Metro я видел неработающий Solar 2. А ещё в Release Notes драйвера была инфрмация про фикс драйвера для работы Left 4 Dead 2.Но если работает, то на многопроцессорных компах растёт FPS.
И часто вы видите многопроцессорные компы? :)
А какое, с точки зрения ядра, глобальное отличие между системой с несколькими сокетами или системой с несколькими ядрами?
именно с точки зрения ядра. то отличии самые большие! не зря и придумывали cgroup&numad - а вот чуть выше уровня ядра, то различий нет никаких.
> именно с точки зрения ядра. то отличии самые большие!Ваще никаких. Ядро бывает SMP и UP.
CGROUPS - это костыль для ручного раскидывания ресурсов.
NUMA - это костыль для ручного раскидывания памяти.
Алгоритмы абсолютно те же, что на multicore, что на multicpu.
Вся фича в железе, и в основном в разделении шин PCI.
И кстати, NUMA - аппаратная фича.
Ну, ну, а с памятю все происходит само, а не через Ж с какой-то матерью...
> И кстати, NUMA - аппаратная фича.[ 0.000000] No NUMA configuration found
[ 0.000000] Faking a node at [mem 0x0000000000000000-0x000000042fffffff]"CPU not found. Starting software emulation..."
Угу, а ещё там же есть FPU emulation, MMX emulation, SATA работают через SCSI,
а самый пиз..ц - это программный RAID на одном канале SATA.
> а самый пиз..ц - это программный RAID на одном канале SATA.Это ты еще не видел как btrfs с RAID работает. Ему вообще пофиг где ты девайсы возьмешь и какая физическая топология. Для него есть девайсы и место на них. Ну и схема размещения данных которую юзер попросил. Это не просто программный RAID. Это произвольная смесь RAIDов :).
> Но если работает, то на многопроцессорных компах растёт FPS.Многопроцессорных, или многоядерных?