The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Описание работы динамического управления питанием видеокарт семейства Radeon

15.07.2013 21:06

Алекс Дойчер (Alex Deucher), разработчик из компании AMD, опубликовал заметку о том, как работает новый код динамического управления питанием для видеокарт семейства Radeon.

Отмечается, что в целом управление питанием на картах Radeon сводится к тому, что в vbios зашиты таблицы состояний управления питанием (power states). Каждое состояние управления питанием состоит из нескольких различных уровней производительности (performance levels). Уровень производительности в конечном итоге сводится к установке некоторой комбинации частот и напряжений питания. Когда выбрано некоторое состояние питания, аппаратное обеспечение автоматически переключает различые уровни производительности на основании уровня нагрузки на GPU.

Состояния управления питанием характеризуют некий относительно высокоуровневый сценарий использования, актуальный в текущей ситуации. Например "работа от батареи" (battery) или "ориентация на максимальную производительность" (performance). Существуют также дополнительные внутренние состояния для UVD и событий, касающихся перегрева GPU. Кроме состояний питания, драйвер также управляет отключением тактовых сигналов (clock gating), а для некоторых чипов обеспечивает и полное отключение блоков (power gating). Разработчик также приводит пример состояний для мобильного APU.

  1. Главная ссылка к новости (http://www.botchco.com/agd5f/...)
  2. OpenNews: Для ядра Linux 3.11 представлена серия патчей для управления питанием видеокарт семейства Radeon
  3. OpenNews: В Gallium3D-драйвер RadeonSI добавлена поддержка вычислений с двойной точностью
  4. OpenNews: В Gallium3D драйвере RadeonSI включена по умолчанию поддержка GLSL 1.30
  5. OpenNews: Драйвер RadeonSI достиг уровня выполнения простых OpenCL программ
Автор новости: Аноним
Тип: К сведению
Короткая ссылка: https://opennet.ru/37426-radeon
Ключевые слова: radeon, amd, gpu
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (32) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, commiethebeastie (ok), 22:07, 15/07/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Новое управление питание очень четко работает для серии 6xxx. Я был весьма удивлен. Надеюсь для апушек допилили.
     
     
  • 2.6, Аноним (-), 22:54, 15/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Его до мержинга в -rc1 даже пару раз фиксили по мелочи.
     
  • 2.15, Аноним (-), 14:44, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Также имею честь подтвердить для HD5xxx - работает изумительно. GPU валит на повышенную частоту при малейшей нагрузке, однако без нагрузки сидит на минимуме. И никаких вам мерцаний при изменениии частот. Красота!
     

  • 1.2, Аноним (-), 22:20, 15/07/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    интересно а в чем конкретно была засада раньше, когда пытались реверс-инженерить это дело.
     
     
  • 2.3, 123 (??), 22:25, 15/07/2013 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Такие параметры экспериментальным путем выясняют. BLOB тяжко реверсить.
     
     
  • 3.9, Аноним (-), 23:58, 15/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Какие "такие"? Значения напряжений и частот в каждом из состояний? Да пожалуйста, берите тулзу RBE и смотрите/правьте.
     
     
  • 4.27, Аноним (-), 00:43, 17/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > берите тулзу RBE и смотрите/правьте.

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

    Отрихтовать таблицы самому - это уже для тех кто понимает что он делает. И понимает что вписывание туда абы чего может видяху попросту угробить.

     
  • 2.7, Аноним (-), 23:10, 15/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > интересно а в чем конкретно была засада раньше, когда пытались реверс-инженерить это дело.

    Засада в том что
    1) Достаточно навороченные наборы состояний.
    2) Каждый производитель GPU пишет таблицы в меру своей дурости и они у всех разные.
    3) Не все производители заполняют все состояния.
    4) У старых GPU сие вроде как несколько отличается.

    В результате амдшникам пришлось существенное перепилить все это дело с учетом фактических реалий.

     

  • 1.4, a (??), 22:26, 15/07/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А тем временем с момента последнего релиза каталиста прошло 84 дня.
     
     
  • 2.5, Fyjybv (?), 22:46, 15/07/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    А по-моему это ваше amd давно дало понять, что новый открытый драйвер для них приоритетнее. А не открыли старый из-за того, что его проще переписать, чем поддерживать.
     
     
  • 3.8, Аноним (-), 23:12, 15/07/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > А по-моему это ваше amd давно дало понять, что новый открытый драйвер
    > для них приоритетнее.

    Клиентура не желает возиться с блобами, по большому счету. Особенно те кому надо вычисления и прочая. А поскольку у амд вычисления на GPU с учетом архитектуры задумана как сильная сторона - довольно странно было бы пичкать клиентуру кактусами против их желания.

    Тем более что китайцы помнится показали нвидии смачный фак на полмиллиарда баксов т.к. их блоб оказывается под MIPS вообще не собирается. А вот у амд с этим думается никаких особых проблем: atom bios изначально задуман платформенно-нейтральным, драйверу тоже не сильно большая разница где и что.

     
     
  • 4.11, Аноним (-), 07:42, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Какая внезапность. Двоичный драйвер для х86 не работает на МИПС. Кто бы мог подумать.
     
     
  • 5.16, Аноним (-), 14:46, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Какая внезапность.

    Ну а вот у китайцев - миллионы машин на основе MIPS в сфере образования и прочая. Кто бы мог подумать?

     
     
  • 6.19, Аноним (-), 16:17, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >> Какая внезапность.
    > Ну а вот у китайцев - миллионы машин на основе MIPS в
    > сфере образования и прочая. Кто бы мог подумать?

    И чо? Это голубая пичаль китайцев так-то.

     
     
  • 7.20, Аноним (-), 19:33, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > И чо? Это голубая пичаль китайцев так-то.

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

     
  • 3.21, Фтщтнь (?), 21:03, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > А по-моему это ваше amd давно дало понять, что новый открытый драйвер
    > для них приоритетнее. А не открыли старый из-за того, что его
    > проще переписать, чем поддерживать.

    Все гораздо проще, в свете не очень хорошего финансового состояния AMD, им проще разрабатывать драйвера за счет сообщества.

     
  • 3.32, Аноним (-), 00:28, 19/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Если и приоритетнее, то только по одной причине: можно слать патчи раз в полгода и некому будет ныть "а пачиму вы драйвер не выпускаете???".
     
  • 2.10, Аноним (-), 00:52, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    47 с момента беты.
     
  • 2.13, Аноним (-), 11:21, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Оговорка по Тихоокеанскому рубежу ? =) Сегодня мы остановим проприетарщину, сегодня опенсорс начнет последнюю битву !
     
     
  • 3.14, Аноним (-), 13:29, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Никаких оговорок. AMD не разрабатывает проприетарный драйвер и изредка высылает патчи в открытый. Действительно, образец поддержки своих клиентов.
     
     
  • 4.17, Аноним (-), 14:47, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > открытый. Действительно, образец поддержки своих клиентов.

    В данном случае они сделали ровно то что от них хотели. Алилуйя, теперь у радеонов отличное управление питанием.

     

  • 1.12, linvinus (?), 11:15, 16/07/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кто нибудь ещё тестил?
    у меня на ноуте карта серии 4xxx.
    большой разницы не заметил.
     
     
  • 2.18, Аноним (-), 15:14, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Кто нибудь ещё тестил?

    Я тестил. На десктопном HD5xxx работает изумительно. Температура GPU сама понижается на 10 градусов относительно загрузки "все по дефолту". А при малейшей нагрузке GPU лезет по частотам вверх - скорость 3D операций не пострадала.

    > у меня на ноуте карта серии 4xxx.
    > большой разницы не заметил.

    Вы ядру скомандовали radeon.dpm=1 в командлайне? Если да - покажите dmesg, в месте где идет вывод такого добра:

    [   4.112767] == power state 0 ==
    [    4.112769] ui class: none
    [    4.112771] internal class: boot
    [    4.112773] caps: video
    .... (для всех режимов)

    Там же написано и какой power state был при загрузке и на какой драйвер изволил переключиться опосля.

    Понаблюдать за щелканием частотами можно как-то так:
    while (true) do cat /sys/kernel/debug/dri/0/radeon_pm_info; sleep 2; done;

    Температуру GPU можно посмотреть в файлике типа
    /sys/class/drm/card0/device/hwmon/hwmon3/temp1_input

    Если кажется что текущий power state вам не по вкусу, переключиться на другой можно наэхав нужный в файлик типа /sys/class/drm/card0/device/power_dpm_state

    Если карточка не первая в системе то /0/ и /card0/ придется заменить на фактические значения. А hwmon3 - это в моей системе. В других может отличаться. А еще при активном композитинге и прочая - GPU может лезть вверх и от активного вывода на терминал - потому и задержка в 2 сек присобачена.

    В целом наблюдения за работой фичи произвели весьма и весьма позитивное впечатление пока-что.

     
     
  • 3.23, linvinus (?), 23:09, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    прошу прощения, промахнулся, мой ответ ниже.
     
     
  • 4.24, linvinus (?), 23:10, 16/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > прошу прощения, промахнулся, мой ответ ниже.

    и ещё

    cat /sys/kernel/debug/dri/0/radeon_pm_info
    Debugfs support not implemented for this asic

    чтобы это значило? гугл молчит

     
     
  • 5.26, Аноним (-), 00:41, 17/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Debugfs support not implemented for this asic
    > чтобы это значило? гугл молчит

    То что для данного чипа статистика в драйвере не реализована :(. По логике вещей это баг. Хоть простому смертному и не нужны эти цифры, но все-таки...

     
  • 5.31, anoser_anon (?), 08:12, 18/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    http://cgit.freedesktop.org/~agd5f/linux/commit/?h=drm-fixes-3.11&id=444bddc4

    добавили

     

  • 1.22, linvinus (?), 23:08, 16/07/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Спасибо что откликнулись каталог sys class drm card0 device hwmon у меня отсут... большой текст свёрнут, показать
     
     
  • 2.25, Аноним (-), 00:37, 17/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Ну меня амдшная активность проперла и я более-менее изучил вопрос Это датчик те... большой текст свёрнут, показать
     
     
  • 3.28, linvinus (?), 12:31, 17/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >Достаточно слабая корреляция, думается. Т.е. меряется все-таки в основном температура проца.

    согласен, но моя цель охладить процессор.
    уже через год использования ноута температура процессора под нагрузкой начала подниматься до 100 градусов, так что любое понижение температуры для меня очень актуально.
    ноут HP tx2550er
    пока помогала периодическая чистка радиатора, но всё равно ноут горячий.

    спасибо за консультацию! буду разбираться дальше

     
     
  • 4.29, Аноним (-), 15:22, 17/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > согласен, но моя цель охладить процессор.

    Тогда загнать в состояние "battery", как вы и сделали. Скорость графики разумеется просядет, но если это не волнует...

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

    Баллончик со сжатым воздухом для продувки радиаторов от пыли вам в руки :).

    > пока помогала периодическая чистка радиатора, но всё равно ноут горячий.

    Ну так это стандартные грабли ноутов - радиатор пылью забивается. Там в целом системы охлаждения хиленькие. Потому что большие системы охлаждения размещать негде, а сильно гнать воздух - соседство с турбиной истребителя пользователям не нравится. Ну вот и получается весьма компромиссное решение: или совсем дохлый процессор, или греется. Чудес не бывает. А т.к. юзается где попало + в мощном ноуте воздух продувать надо все-таки сильно, чтобы не перегревался - оно превращается в мини-пылесос. Ну и забивается кулер пылью в результате.

    Если хочется любой ценой температуру скостить - тогда логично проц даунклокнуть, средствами биоса или просто порулить планировщиком в пингвине, например зарезав максимальную частоту (со всеми вытекающими, как то более тормозная работа). Думается начальный radeon кушает шибко меньше чем мощный процессор, особенно на максимуме. Но еще логичнее почистить систему охлаждения, т.к. с номинальными режимами она должна бы все-таки справляться.

     
     
  • 5.30, linvinus (?), 22:46, 17/07/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Да всё так и есть.
    Полностью разбираю, вынимаю материнку, снимаю радиатор, чищу, собираю обратно.
    проц на 500Mhz, работает firefox без флеша - температура 59-65.
    сегодня ещё хард заменил на WD5000LPVT,старый st9160827as грелся сильно, этот тоже греется но ощутимо меньше.
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру