Привет Я хочу, чтобы выделить возлагали память, но не с помощью cudaMallocHost, я прочитал this post и пытался использовать фиксированный ММАП подражать «cudaMallocHost»:Что эквивалентно реализации системы API для cudaMallocHost
data_mapped_ = (void *)mmap(NULL, sb.st_size, PROT_READ, MAP_SHARED, fd_, 0);
if(munmap(data_mapped_, sb.st_size) == -1) {
cerr << "munmap failed" << endl;
exit(-1);
}
data_mapped_ = (void *)mmap(data_mapped_, sb.st_size, PROT_READ, MAP_SHARED|MAP_FIXED, fd_, 0);
Но это все еще не так быстро, как cudaMallocHost. Итак, какова правильная реализация приложения закрепленной памяти?
C и C++ - ** разные ** языки. Ваш код не C и CUDA не основаны на C! – Olaf
@ Олаф делает это? –
Если вы должны спросить об этом, вы не знаете, по крайней мере, на двух языках недостаточно. Я бы порекомендовал вам остаться с C++/CUDA. (честно без обид!) – Olaf