cudaVF_pinnedVector | cudaVD_pinnedVector | cudaVE_pinnedVector |
cudaVCF_pinnedVector | cudaVCD_pinnedVector | cudaVCE_pinnedVector |
cudaVPF_pinnedVector | cudaVPD_pinnedVector | cudaVPE_pinnedVector |
cudaVI_pinnedVector | cudaVBI_pinnedVector | cudaVSI_pinnedVector |
cudaVLI_pinnedVector | cudaVQI_pinnedVector | |
cudaVU_pinnedVector | cudaVUB_pinnedVector | cudaVUS_pinnedVector |
cudaVUL_pinnedVector | cudaVUQ_pinnedVector | cudaVUI_pinnedVector |
|
Funktion | Allokation von "pinned" Host-Memory |
|
CUDA-Funktion C/C++ | #include <cudaVFstd.h>
fVector cudaVF_pinnedVector( fVector *h_X, ui size );
|
CUDA-Funktion Pascal/Delphi | uses VecLib;
function cudaVF_pinnedVector( var h_X:fVector; size:UIntSize ): fVector;
|
|
Beschreibung | Host-Speicher wird reserviert und in den "pinned"-Zustand überführt. Der Device-Zeige wird zurückgegeben; der Host-Zeiger wird als h_X gespeichert. Um den so reservierten Speicher wieder freizugeben, benutze man cudaV_pinnedFree, cudaV_pinnedFreeAll, or cudaV_pinnedNfree (letztere Funktion nur in C/C++).
Eine Beschreibung der verschiedenen in cudaOptiVec verwendeten Speichertypen findet sich in CudaOptiVecD.htm, Kap. 3. |
|
Fehlerbehandlung | Falls nicht genug Speicher vorhanden ist, oder im Falle von size=0, wird eine Fehlermeldung "Not enough memory" ausgegeben und das Programm abgebrochen.
|
|
Rückgabewert | Device-Zeiger auf den reservierten Speicherbereich |
|
|