Вопрос или проблема
Я использую:
- Windows 10
- Nvidia GTX1070-8GB
- 24 ГБ системной оперативной памяти
- i7
У меня возникает проблема в видеоредакторе, который жалуется на нехватку видеопамяти GPU.
При проверке моих ресурсов я заметил, что Windows выделила “общую видеопамять” для моей карты.
В моем случае к “общей” памяти видеокарты добавляются 12 ГБ, что в сумме дает 20 ГБ (8 ГБ Nvidia + 12 ГБ общей).
Я никак не могу найти настройку, чтобы изменить это. Ни в приложении драйвера Nvidia, ни в Windows, ни в BIOS.
Кто-нибудь знает, как отключить эту функцию? Я подозреваю, что она может влиять на жалобу моего приложения на нехватку видеопамяти, так как когда оно вылетает и сообщает об ошибке недостатка памяти GPU, диспетчер задач показывает физическую видеопамять менее 6 ГБ (из 8 ГБ всего).
Как мне избавиться от этой “общей видеопамяти GPU”, чтобы проверить свою теорию?
Вот как выглядят мои ресурсы, пока мой видеоредактор работает… Windows точно выделяет и использует “общую видеопамять”
Детали моей ошибки:
Приложение: Davinci Resolve Studio 16.2
Дебаг-лог:
[0x000019c0] | GPUManager | ИНФО | 2020-04-28 20:34:00,244
| Очищаем видеопамять…[0x000019c0] | DVIP | ОШИБКА | 2020-04-28 20:34:00,815
| cudaMallocArray не удалось: Запрашиваемый размер 126.6 МиБ (7680×4320-1
размер данных 4)[0x000019c0] | DVIP | ОШИБКА | 2020-04-28 20:34:00,815
| DeviceResourceTypeCUDA.cpp:177: Ошибка CUDA cudaErrorMemoryAllocation
(2)[0x000019c0] | DVIP | ОШИБКА | 2020-04-28 20:34:00,816
| Статус памяти CUDA : свободно 62.0 МиБ всего 8192.0 МиБ[0x000019c0] | DVIP | ОШИБКА | 2020-04-28 20:34:00,822
| cudaMallocArray не удалось: Запрашиваемый размер 126.6 МиБ (7680×4320-1
размер данных 4)[0x000019c0] | DVIP | ОШИБКА | 2020-04-28 20:34:00,822
| DeviceResourceTypeCUDA.cpp:177: Ошибка CUDA cudaErrorMemoryAllocation
(2)[0x000019c0] | DVIP | ОШИБКА | 2020-04-28 20:34:00,822
| Статус памяти CUDA : свободно 62.0 МиБ всего 8192.0 МиБ[0x000019c0] | GPUManager | ОШИБКА | 2020-04-28 20:34:00,828
| Исключение при выполнении алгоритмов GPU:[0x000019c0] | DVIP | ОШИБКА | 2020-04-28 20:34:00,828
| Исключение DVIP: Позиция DeviceResourceTypeCUDA.cpp:177
– API: CUDA
– Код ошибки API: cudaErrorMemoryAllocation (2)
Связанные проблемы от других людей.
Поиск в Google
Мои ресурсы, когда приложение запущено.
Иногда моя общая видеопамять используется больше, чем моя физическая видеопамять. 2-е изображение
Обычно это сделать невозможно. Может быть, существуют какие-то хаки, специфичные для вашей видеокарты, например, редактирование реестра, однако это не рекомендуется. Оперативная память используется только в том случае, если GDDR видеокарты становится слишком заполненной.
Вряд ли ваша проблема связана с общей памятью.
Вы не можете сделать это из реестра, так как это не проблема Windows (я выяснил это после использования двойной загрузки с Debian), однако вы можете сделать это из BIOS.
Advanced > Меню конфигурации видео > Размер встроенной видеопамяти.
Здесь вы можете изменить или даже отключить общую память.
Ответ или решение
Конечно, давайте разберемся с вашей проблемой "Общей памяти GPU" и возможностью отключения этой функции.
Проблема с общим использованием видеопамяти
Вы упомянули, что ваша видеоредактор, DaVinci Resolve Studio, вызывает ошибки, связанные с недостатком памяти GPU, и указываете на то, что Windows выделяет "общую видеопамять", которая может влиять на производительность приложения. На самом деле, наличие общей видеопамяти — это нормальная функция, которая активируется в тех случаях, когда физическая видеопамять (в вашем случае 8 ГБ) переиспользуется для обеспечения дополнительной памяти из системной ОЗУ, если она начинает исчерпываться.
Можно ли отключить общую видеопамять?
К сожалению, стандартными средствами, такими как настройки из Nvidia Control Panel или Windows, отключить общую видеопамять нельзя. Однако, вы можете попробовать изменить некоторые настройки BIOS вашего устройства, чтобы уменьшить выделяемую общую видеопамять.
Как изменить настройки BIOS
-
Перезагрузите компьютер и войдите в BIOS. Это обычно делается нажатием клавиш, таких как F2, Delete, или Esc во время загрузки (это зависит от модели вашей материнской платы).
-
Найдите раздел Advanced, затем Video Configuration или что-то подобное (названия могут различаться в зависимости от производителя материнской платы).
-
В этом меню вы должны увидеть параметры, связанные с Onboard Video Memory Size или Shared Memory. Вы можете уменьшить количество выделяемой общей памяти или отключить её вовсе.
-
Сохраните изменения и перезагрузите компьютер.
Важное замечание
Имейте в виду, что общая видеопамять используется только тогда, когда физическая видеопамять недостаточна. Если вы отключите или уменьшите выделение общей памяти, это может привести к тому, что некоторые приложения могут испытывать еще больше проблем с памятью, если они будут требовать больше памяти, чем доступно на вашей видеокарте.
Другие рекомендации
-
Обновите драйвера видеокарты и программное обеспечение, которое вы используете. Убедитесь, что у вас установлены последние версии как для Nvidia, так и для самого DaVinci Resolve.
-
Оптимизируйте настройки проекта в DaVinci Resolve. Иногда изменение разрешения или формата проекта может помочь в снижении потребления видеопамяти.
-
Мониторинг ресурсов: Используйте Task Manager для контроля потребления памяти приложениями, и возможно, следует закрывать другие приложения, которые могут использовать GPU.
-
Если проблема сохраняется, рассмотрите возможность увеличения аппаратных ресурсов, таких как добавление второй видеокарты или замена существующей на более мощную.
Если у вас остались вопросы, не стесняйтесь задавать!