Я использую Alea GPU с GTX-1081ti, который имеет 11 ГБ глобальной памяти.
Когда я использую метод Alea Gpu.Default.Allocate
для выделения памяти на GPU, когда я встаю около 3+ ГБЯ получаю сообщение об ошибке "Недостаточно памяти".
Мой код:
private static int Length = 2147000000;
...
var gpu = Gpu.Default;
gpu.Allocate<int>(Length);
Это должно выделить около 8 ГБ ОЗУ графического процессора, но это дает исключение CUDA из нехватки памяти.Я пробовал использовать более низкие значения длины, и на основании отчета диспетчера задач выделенная память графического процессора занимает всего около 3 ГБ, прежде чем выдает ошибку.
Однако, когда я делаю то же самое с необработанным кодом CUDA(за пределами Alea) мой лимит составляет чуть более 80% от 11 ГБ или почти 9 ГБ (поскольку W10 ограничивает выделение).
Кто-нибудь знает, почему у меня «недостаточно памяти»ошибка только в 3 ГБ?
Спасибо.