Буфер принудительной блокировки OpenCL останется на графическом процессоре

существует ли способ заставить OpenCL хранить данные в буфере глобальной памяти на чипе (т.е. он никогда не попадает в системную память)? В основном я хочу зарезервировать часть памяти GPU для своих нужд, и я хочу, чтобы данные, которые я там оставил, оставались на графическом процессоре, независимо от того, начинают ли другие приложения насыщать память GPU.

Спасибо!

1 ответ

GPU не связаны с блоком управления памятью CPU, они не выполняют сбои страниц, такие как CPU. Это периферийные устройства блочных устройств, управляемые драйверами устройств.

Для OpenCL, когда вы выделяете память на GPU, создавая объект cl_mem и записывая (записывая) его на GPU, он будет придерживаться, пока вы явно не освободитесь, с clReleaseMemobject. Чтобы повторно использовать буфер, вам не нужно его выпускать и отслеживать его объект Cl_mem.

licensed under cc by-sa 3.0 with attribution.