2013-05-12 5 views
1

기본적으로 페이지 동기 메모리에 할당해야하는 GSL 매트릭스가 있습니다. gsl_matrix_alloc은 이것을 지정하지 않습니다. 내 gsl_matrix -> 데이터에 포인터를 리디렉션해야 할 것 같습니다. 그러나 페이지 잠금 메모리를 할당 할 수있는 C++ 방법이 있습니까?C++이 페이지 잠금 메모리를 할당 할 수 있습니까?

참고 : CUDA API와 같은 다른 비표준 C++ API는 사용할 수 없습니다.

답변

3

Linux를 사용한다고 가정하면 mlock 설명서를보십시오.

> NAME 
>  mlock, munlock, mlockall, munlockall - lock and unlock memory 
> 
> SYNOPSIS 
>  #include <sys/mman.h> 
> 
>  int mlock(const void *addr, size_t len); 
>  int munlock(const void *addr, size_t len); 
> 
>  int mlockall(int flags); 
>  int munlockall(void); 
4

실제 메모리에 잠긴 가상 메모리를 의미하는 경우 Windows에는 VirtualLock()이 있고 Linux에는 memlock()이 있습니다.