Автор Тема: MPC Video Renderer  (Прочитано 72948 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
MPC Video Renderer
« Ответ #600 : 16 Февраль 2020, 05:50:30 »
V0lt,
Цитировать
Недостаточная производительность D3D11 на Win7 - это не баг.
Что-то не похоже это на естественное поведение самого D3D11 на Win7. Уж больно чрезмерно высокая нагрузка присутствует во время воспроизведения. Настолько высокая, что даже интерфейс с курсором мышки еле двигаются.
Хоть это и не утечка памяти, но поведение именно такое, как будто бы вся память забита подчистую.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

Aleksoid1978

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2208
MPC Video Renderer
« Ответ #601 : 16 Февраль 2020, 06:07:33 »
Ну память можно помониторить. А так - возможно шейдеры "тупят". Все бы ничего - но вот студию в 7 не запустить ))
I7 2600K@4.2 / Asrock P67 Extreme 4 Gen 3 / Kingston HyperX 8Gb 1866 (4x2) Kit / GIGABYTE GTX 960 / BenQ EW2430 / LG 47LM620T / Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1811
MPC Video Renderer
« Ответ #602 : 16 Февраль 2020, 07:26:43 »
Evgeniy1990
Сравниваем режим D3D11 для Win7 и Win8.1/10 в одинаковых условиях (не используем видеопроцессор D3D11, все на шейдерах). Если на Win7 тупит, а на других системах нормально, то вопрос можно закрыть.

Напомню. Поддержка D3D11 для Win7 сделана ради галочки, работает как работает, код такой же как для других систем. Если тупит, то тупит.

Добавлено: 2020-02-16 10:26:43

MPCVideoRenderer-v0.4.2.1132_git2020.02.16-5a11686
Немного разрулил проблему с изменением яркости. Теперь видеопроцессор D3D11 выводит только в целочисленные форматы текстур (8 и 10 бит).

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
MPC Video Renderer
« Ответ #603 : 16 Февраль 2020, 08:42:43 »
Aleksoid1978,
Цитировать
Все бы ничего - но вот студию в 7 не запустить ))
Чего??? О_о У меня на Windows 7 без проблем запускается 2019 студия, к тому же она имеет поддержку Win7 SP1.
Непонятно, откуда у вас такие проблемы...

V0lt,
Цитировать
MPCVideoRenderer-v0.4.2.1132_git2020.02.16-5a11686
Немного разрулил проблему с изменением яркости. Теперь видеопроцессор D3D11 выводит только в целочисленные форматы текстур (8 и 10 бит).
Теперь яркость всегда стабильная, не меняется, при изменении форматов текстуры. :)
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

Aleksoid1978

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2208
MPC Video Renderer
« Ответ #604 : 16 Февраль 2020, 09:00:56 »
Ну если студия запускается на 7 - то берем ее и смотрим через профайлер кто дает нагрузку, правда сперва надо выяснить нагрузка на что - CPU или GPU.
I7 2600K@4.2 / Asrock P67 Extreme 4 Gen 3 / Kingston HyperX 8Gb 1866 (4x2) Kit / GIGABYTE GTX 960 / BenQ EW2430 / LG 47LM620T / Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1811
MPC Video Renderer
« Ответ #605 : 16 Февраль 2020, 11:10:51 »
mpcvr_1133_dev11.1
Прошу проверить на разных старых видеокартах режим DX11. Работает или нет.
От видеокарты требуется поддержка DX10 и новее. Система Win7SP1+PlatformUpdate и новее.
В общем чем дремучее будет система, тем интереснее результат.

Что сделано. Интерфейсы ID3D11Device и ID3D11DeviceContext заменены на ID3D11Device1 и ID3D11DeviceContext1.
По идее эта сборка в работе не должна отличаться от предыдущей.

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
MPC Video Renderer
« Ответ #606 : 16 Февраль 2020, 11:21:50 »
Aleksoid1978,
Цитировать
Ну если студия запускается на 7 - то берем ее и смотрим через профайлер кто дает нагрузку, правда сперва надо выяснить нагрузка на что - CPU или GPU.
Выяснил. Бешеная нагрузка идет именно на GPU, он всегда под 100%.
Если отключить DXVA2 для HEVC, то воспроизведение нормальное, без пропусков кадров.
Значит, проблема, связанная с аппаратным ускорением 10-битных HEVC-файлов на Win7 SP1 + D3D11 + Shaders.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

Aleksoid1978

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2208
MPC Video Renderer
« Ответ #607 : 16 Февраль 2020, 11:50:07 »
Ну не хватает видимо "мощей" одновременно крутить HEVC 10bit + DX11 shaders.
I7 2600K@4.2 / Asrock P67 Extreme 4 Gen 3 / Kingston HyperX 8Gb 1866 (4x2) Kit / GIGABYTE GTX 960 / BenQ EW2430 / LG 47LM620T / Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1811
MPC Video Renderer
« Ответ #608 : 16 Февраль 2020, 12:01:32 »
Я думаю там на копирование много ресурсов тратиться. Но тогда на Win8.1/10 при тех же условиях ситуация должна быть похожая.

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
MPC Video Renderer
« Ответ #609 : 16 Февраль 2020, 12:07:03 »
Aleksoid1978
Цитата: Aleksoid1978
Ну не хватает видимо "мощей" одновременно крутить HEVC 10bit + DX11 shaders.
Это смешно... Быть такого не может, чтобы в аппаратном режиме не хватало мощностей.

Посмотрите, пожалуйста, видеозапись. На ней видно, что частота кадров не соответствует действительной.
Причем, в режиме DXVA2 идет достаточно много копирования данных.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

Aleksoid1978

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2208
MPC Video Renderer
« Ответ #610 : 16 Февраль 2020, 12:20:03 »
Так, разберёмся - декодер же DXVA2. Если так - то смотрим сколько времени занимает копирование, которое для связки DXVA2 + DX11 сделано «для галки», обычным копированием из GPU памяти в локальную, а это очень медленная операция. Видно же сразу по статистике. Уже блин 100500 раз поднимали этот вопрос и опять одно и тоже.

DXVA2 + DX9, либо LAV DX11 Native + DX11 - вот оптимальные связки. Софтовое декодирование одинаково будет работать с DX9/DX11.
I7 2600K@4.2 / Asrock P67 Extreme 4 Gen 3 / Kingston HyperX 8Gb 1866 (4x2) Kit / GIGABYTE GTX 960 / BenQ EW2430 / LG 47LM620T / Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1811
MPC Video Renderer
« Ответ #611 : 16 Февраль 2020, 12:44:23 »
У Nvidia c копированием все хорошо :)


Добавлено: 2020-02-16 15:44:23

Хотя вот тут пишут, что GTX 950 должна быть слабее RX 580. :)

Evgeniy1990, какие у тебя процессор и оперативная память? Память в двухканальном режиме работает?

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
MPC Video Renderer
« Ответ #612 : 16 Февраль 2020, 14:48:05 »
Aleksoid1978,
Цитировать
LAV DX11 Native + DX11
Ага, как же... на Win7 эта связка не прокатит.

V0lt,
Цитировать
Evgeniy1990, какие у тебя процессор и оперативная память? Память в двухканальном режиме работает?
Характеристики системы
Память у меня работает в двухканальном режиме (MEMORY RUNS AT DUAL CHANNEL INTERLEAVED MODE).
Цитировать
У Nvidia c копированием все хорошо
Вот именно, только у NVIDIA. С AMD наш MPC VR работает в разы хуже, чем должен работать.
Складывается такое ощущение, что текущий код совсем не подходит для работы на AMD. Потому что имеются такие неприятные баги, которых быть не должно. Да и машины у меня не настолько слабые, чтобы не вытянуть какой-то элементарный HEVC в аппаратном режиме. Также, обе машины немного разогнаны. Если даже с разгоном выскакивают такие баги, тот тут вывод только один - наш MPC VR не приспособлен для нормальной работы на AMD.
Это я еще проверяю на стабильном сертифицированном (WHQL) драйвере - кримсоне. Про Адреналин я вообще молчу, там творится та еще дичь, я уже говорил ранее. И все сводится именно к коду нашего MPC VR.

Я готов вам оставить свою машину с AMD -видеокартой для отладки программного кода MPC VR.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.

V0lt

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 1811
MPC Video Renderer
« Ответ #613 : 16 Февраль 2020, 17:09:45 »
Evgeniy1990
Я не услышал ответ на вопрос. На Win8.1/10 так же тупит или нет? Есть возможность проверить?
Цитировать
Характеристики системы
DDR2, допустим там скорость 6400 МБ/с.
У меня DDR3, судя по CPU-Z скорость 14200 МБ/с. Это в 2,2 раза быстрее. Где-то еще теряется...

Добавлено: 2020-02-16 20:09:45

Evgeniy1990, попробуй сборки mpcvr_1133_upsr_1 и mpcvr_1133_upsr_2.

Evgeniy1990

  • Ветеран
  • *****
  • Сообщений: 1453
MPC Video Renderer
« Ответ #614 : 16 Февраль 2020, 21:29:23 »
V0lt,
Цитировать
Я не услышал ответ на вопрос. На Win8.1/10 так же тупит или нет? Есть возможность проверить?
Я же сказал, поставлю Windows 10 на машину с AMD Radeon RX 580 Series и проверю.

В общем, установил и проверил поведение на Windows 10. Также присутствуют пропуски кадров на 10-битных HEVC-видео файлах в режиме D3D11 в аппаратном режиме DXVA2 на видеопроцессоре D3D11.

Добавлено: 2020-02-17 00:29:23

V0lt,
Цитировать
Evgeniy1990, попробуй сборки mpcvr_1133_upsr_1 и mpcvr_1133_upsr_2.
Проверил ваши тестовые сборки.

1. "mpcvr_1133_upsr_1" - также как и на Git-сборках присутствуют пропуски кадров.
2. "mpcvr_1133_upsr_2" - гораздо лучше работает воспроизведение с незначительными пропусками кадров, т.е. пропуски кадров во время воспроизведения есть, но они появляются постепенно (периодически), спустя несколько секунд.

Единственная неприятность, в вашей второй тестовой сборке "mpcvr_1133_upsr_2", во время воспроизведения присутствует зеленый экран.
Motherboards: ASUS P5Q/GIGABYTE EP35C-DS3R, CPU: Core 2 Duo E8300/E8400, Memory: DDR2/DDR3, Video: MSI GTX 465/ASUS EAH5770/GTX 650 Ti, Audio: ASUS Xonar DG 5.1/Creative SB 5.1. VX/X-Fi Xtreme Gamer.