इसे आज़माएं, यह मिलीसेकंड में 2 घटनाओं के बीच का समय मापता है।
__global__ void kernelSample(int *runtime)
{
// ....
clock_t start_time = clock();
//some code here
clock_t stop_time = clock();
// ....
runtime[tidx] = (int)(stop_time - start_time);
}
कौन से दो कॉल के बीच घड़ी चक्रों की संख्या देता है:
cudaEvent_t start, stop;
float elapsedTime;
cudaEventCreate(&start);
cudaEventRecord(start,0);
//Do kernel activity here
cudaEventCreate(&stop);
cudaEventRecord(stop,0);
cudaEventSynchronize(stop);
cudaEventElapsedTime(&elapsedTime, start,stop);
printf("Elapsed time : %f ms\n" ,elapsedTime);
अमीन, (कुछ साल पहले) आपने एक उत्तर स्वीकार किया जो उपयोगी जानकारी है लेकिन आपके वास्तविक प्रश्न का उत्तर नहीं देता है। क्या आप शायद उत्तर को प्रतिबिंबित करने के लिए प्रश्न को स्वीकार नहीं कर रहे हैं या संपादित कर रहे हैं? – einpoklum