cudaMF_pinnedMatrix0
| cudaMD_pinnedMatrix0 |
cudaME_pinnedMatrix0 |
cudaMCF_pinnedMatrix0 |
cudaMCD_pinnedMatrix0 |
cudaMCE_pinnedMatrix0 |
cudaMI_pinnedMatrix0 | cudaMBI_pinnedMatrix0 | cudaMSI_pinnedMatrix0 |
cudaMLI_pinnedMatrix0 | cudaMQI_pinnedMatrix0 | |
cudaMU_pinnedMatrix0 | cudaMUB_pinnedMatrix0 | cudaMUS_pinnedMatrix0 |
cudaMUL_pinnedMatrix0 | cudaMUQ_pinnedMatrix0 | cudaMUI_pinnedMatrix0 |
|
Funktion | Reservierung von "pinned" Host-Memory für eine Matrix und Initilisierung mit 0 |
|
CUDA-Funktion C/C++ | #include <cudaMFstd.h>
fMatrix0 cudaMF_pinnedMatrix0( fMatrix0 *h_MA, ui ht, ui len );
|
CUDA-Funktion Pascal/Delphi | uses VecLib;
function cudaMF_pinnedMatrix0( var h_MA:fMatrix0; ht, len:UIntSize ): fMatrix0;
|
|
Beschreibung | Host-Speicher für eine Matrix wird reserviert, in den "pinned"-Zustand überführt und mit 0 initialisiert. Der Device-Zeige wird zurückgegeben; der Host-Zeiger wird als h_MA gespeichert. Um den so reservierten Speicher wieder freizugeben, benutze man cudaM_pinnedFree, cudaM_pinnedFreeAll, or cudaM_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 |
|
|