From 1fd10265f8a63d1b1305f40111a97518f5541da2 Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Tue, 07 Apr 2015 22:25:30 +0000
Subject: [PATCH] detection better?
---
src/cuda.c | 16 ++++++++++++++++
1 files changed, 16 insertions(+), 0 deletions(-)
diff --git a/src/cuda.c b/src/cuda.c
index 8849fb1..1b914a5 100644
--- a/src/cuda.c
+++ b/src/cuda.c
@@ -5,7 +5,9 @@
#include "cuda.h"
#include "utils.h"
#include "blas.h"
+#include "assert.h"
#include <stdlib.h>
+#include <time.h>
void check_error(cudaError_t status)
@@ -15,6 +17,7 @@
const char *s = cudaGetErrorString(status);
char buffer[256];
printf("CUDA Error: %s\n", s);
+ assert(0);
snprintf(buffer, 256, "CUDA Error: %s", s);
error(buffer);
}
@@ -57,6 +60,19 @@
return x_gpu;
}
+void cuda_random(float *x_gpu, int n)
+{
+ static curandGenerator_t gen;
+ static int init = 0;
+ if(!init){
+ curandCreateGenerator(&gen, CURAND_RNG_PSEUDO_DEFAULT);
+ curandSetPseudoRandomGeneratorSeed(gen, time(0));
+ init = 1;
+ }
+ curandGenerateUniform(gen, x_gpu, n);
+ check_error(cudaPeekAtLastError());
+}
+
float cuda_compare(float *x_gpu, float *x, int n, char *s)
{
float *tmp = calloc(n, sizeof(float));
--
Gitblit v1.10.0