Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Opracował: Piotr DejaVu Szawdyński
Biblioteki C/C++

cudaMemcpy

[funkcja] Kopiuje dane między kartą graficzną, a pamięcią RAM. Pochodzenie danych pamięci źródłowej i docelowej określa argument funkcji.

Składnia

C/C++
#include <cuda_runtime_api.h>

cudaError_t cudaMemcpy( void * dst,
const void * src,
size_t count,
enum cudaMemcpyKind kind
);

Argumenty

ArgumentOpis
void* dstWskaźnik na obszar pamięci, do której nastąpi kopiowanie.
const void* srcWskaźnik na obszar pamięci, z której nastąpi kopiowanie.
size_t countLiczba bajtów do skopiowania.
cudaMemcpyKind kindKierunek transferu danych (RAM/GPU). Określa w jakiej pamięci znajdują się dane źródłowe oraz na jaki obszar pamięci wskazuje wskaźnik docelowy. Możliwe wartości:
  • cudaMemcpyHostToHost - obszar pamięci źródłowej i docelowej należy do pamięci komputera (RAM).
  • cudaMemcpyHostToDevice - obszar pamięci źródłowej należy do pamięci komputera (RAM), natomiast docelowy obszar pamięci należy do karty graficznej.
  • cudaMemcpyDeviceToHost - obszar pamięci źródłowej należy do pamięci karty graficznej, natomiast docelowy obszar pamięci należy do komputera (RAM).
  • cudaMemcpyDeviceToDeviceobszar pamięci źródłowej i docelowej należy do karty graficznej.

Zwracana wartość

WartośćZnaczenie
cudaSuccessWywołanie funkcji zakończone powodzeniem.
cudaErrorInvalidValueKopiowanie się nie powiodło - bufor źródłowy lub docelowy jest mniejszy niż liczba bajtów do skopiowania.
cudaErrorInvalidDevicePointerWskaźnik źródłowy lub docelowy przekazany do funkcji jest nieprawidłowy (np. wskazany obszar pamięci został zwolniony).
cudaErrorInvalidMemcpyDirectionNieprawidłowy kierunek kopiowania danych (niepoprawna wartość argumentu przekazanego do funkcji).

Opis szczegółowy

Kopiuje dane między kartą graficzną, a pamięcią RAM. Pochodzenie danych pamięci źródłowej i docelowej określa argument kind. Obszary pamięci źródłowej i pamięci docelowej nie mogą na siebie zachodzić.

Linki zewnętrzne