Я пытаюсь настроить профилирование производительности, а также решения во время выполнения, влияющие на стратегию буферизации. Мое приложение получает указатель на буфер, выделенный библиотекой (CUDA или OpenCL).
Как проверить, что область памяти заблокирована страницей?
Насколько я могу судить, POSIX дает нам mlock()
и munlock()
. Как мне эффективно проверить фиктивный mislocked()
?
Ответы для Mac OS X или Linux были бы полезны.
Я видел несколько ссылок, таких как this и this , которые предполагают, что создатели библиотек драйверов выяснили, как выполнить этот тест. Как я могу сделать это в моем коде пользователя?