Принудительный буфер OpenCL, чтобы остаться на GPU - PullRequest
4 голосов
/ 10 марта 2012

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

Спасибо!

1 Ответ

4 голосов
/ 11 марта 2012

Графические процессоры не связаны с блоком управления памятью ЦП, они не делают сбои страниц, как ЦП. Они являются блочными периферийными устройствами, управляемыми драйверами устройств.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...