Skip to content
Snippets Groups Projects
cuda.h 769 B
Newer Older
Joseph Redmon's avatar
Joseph Redmon committed
#ifndef CUDA_H
#define CUDA_H

extern int gpu_index;

#ifdef GPU

#define BLOCK 512
Joseph Redmon's avatar
Joseph Redmon committed

#include "cuda_runtime.h"
Joseph Redmon's avatar
Joseph Redmon committed
#include "curand.h"
Joseph Redmon's avatar
Joseph Redmon committed
#include "cublas_v2.h"

Joseph Redmon's avatar
Joseph Redmon committed
#ifdef CUDNN
#include "cudnn.h"
#endif

Joseph Redmon's avatar
Joseph Redmon committed
void check_error(cudaError_t status);
cublasHandle_t blas_handle();
Joseph Redmon's avatar
Joseph Redmon committed
float *cuda_make_array(float *x, size_t n);
Joseph Redmon's avatar
Joseph Redmon committed
int *cuda_make_int_array(int *x, size_t n);
Joseph Redmon's avatar
Joseph Redmon committed
void cuda_push_array(float *x_gpu, float *x, size_t n);
void cuda_pull_array(float *x_gpu, float *x, size_t n);
void cuda_set_device(int n);
Joseph Redmon's avatar
Joseph Redmon committed
void cuda_free(float *x_gpu);
Joseph Redmon's avatar
Joseph Redmon committed
void cuda_random(float *x_gpu, size_t n);
float cuda_compare(float *x_gpu, float *x, size_t n, char *s);
Joseph Redmon's avatar
Joseph Redmon committed
dim3 cuda_gridsize(size_t n);
float cuda_mag_array(float *x_gpu, size_t n);
Joseph Redmon's avatar
Joseph Redmon committed

Joseph Redmon's avatar
Joseph Redmon committed
#ifdef CUDNN
cudnnHandle_t cudnn_handle();
#endif

Joseph Redmon's avatar
Joseph Redmon committed
#endif