Ich habe eine CUDA Suchfunktion, die eine einzelne Variable berechnet. Wie kann ich es zurückgeben?Wie kann man eine einzelne Variable aus einer CUDA-Kernelfunktion zurückgeben?
__global__
void G_SearchByNameID(node* Node, long nodeCount, long start,char* dest, long answer){
answer = 2;
}
cudaMemcpy(h_answer, d_answer, sizeof(long), cudaMemcpyDeviceToHost);
cudaFree(d_answer);
für diese beiden Zeilen bekomme ich diesen Fehler: Fehler: Argument vom Typ „long“ ist nicht kompatibel mit dem Parameter des Typs „const void *“
Wie erreicht der Hostcode den Typ der Gerätevariable? – erogol
@Erogol sowohl der Kernel als auch der Host-Code kennen den Typ aus der '__device__' Deklaration – wich
Aus irgendeinem Grund funktioniert das nur für mich (Toolkit 6.5), wenn ich' "d_answer" 'durch' d_answer' ersetze, dh die Angebote entfernen . Ansonsten funktioniert das gut. – icurays1