data: cat SGEMM files from 3 repos into cat_files/
siboehm/SGEMM_CUDA (19 files):
siboehm_sgemm.cu, siboehm_runner.cu, siboehm_runner.cuh, siboehm_kernels.cuh
siboehm_cuBLAS_sgemm.cu, siboehm_simplest_kernel.cu, siboehm_CMakeLists.txt
siboehm_{1_naive..12_kernel_double_buffering}.cuh
wangzyon/NVIDIA_SGEMM_PRACTICE (12 files):
wangzyon_sgemm.cu, wangzyon_utils.cu, wangzyon_utils.cuh, wangzyon_kernel.cuh
wangzyon_CMakeLists.txt, wangzyon_kernel_{1..7}.cuh
edtallison/sgemm-cuda (19 files):
edtallison_sgemm.cu, edtallison_runner.cu, edtallison_runner.cuh
edtallison_kernels.cuh, edtallison_cuBLAS_sgemm.cu, edtallison_simplest_kernel.cu
edtallison_CMakeLists.txt, edtallison_{01_naive..12_kernel_double_buffering}.cuh
cat_files/ total: 25 → 75 files
This commit is contained in:
26
cat_files/siboehm_runner.cuh
Normal file
26
cat_files/siboehm_runner.cuh
Normal file
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
#include <cublas_v2.h>
|
||||
#include <cuda_runtime.h>
|
||||
#include <fstream>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <sys/time.h>
|
||||
#include <time.h>
|
||||
#include <unistd.h>
|
||||
|
||||
void cudaCheck(cudaError_t error, const char *file,
|
||||
int line); // CUDA error check
|
||||
void CudaDeviceInfo(); // print CUDA information
|
||||
|
||||
void range_init_matrix(float *mat, int N);
|
||||
void randomize_matrix(float *mat, int N);
|
||||
void zero_init_matrix(float *mat, int N);
|
||||
void copy_matrix(const float *src, float *dest, int N);
|
||||
void print_matrix(const float *A, int M, int N, std::ofstream &fs);
|
||||
bool verify_matrix(float *mat1, float *mat2, int N);
|
||||
|
||||
float get_current_sec(); // Get the current moment
|
||||
float cpu_elapsed_time(float &beg, float &end); // Calculate time difference
|
||||
|
||||
void run_kernel(int kernel_num, int m, int n, int k, float alpha, float *A,
|
||||
float *B, float beta, float *C, cublasHandle_t handle);
|
||||
Reference in New Issue
Block a user