CUDA实战
文章平均质量分 67
风尘23187
这个作者很懒,什么都没留下…
展开
-
Pytorch+cpp_cuda extension 课程二
既然要用到 cuda 那么,就要 .cu(cuda) 文件,这里并没有并行。而是做一个调用的demo。每个点的内插都是独立的,每个点对于每个特征点来说,也是独立的,因此可在这两个方向上并行。N表示有N个正方体,8表示8个特征点,F表示每个特征点的表示方式,F应该等于3吧。和之前的c++程序相比,有以下变化。N表示有N个正方体,3表示坐标。原创 2022-11-14 18:27:49 · 507 阅读 · 0 评论 -
Pytorch+cpp_cuda extension 课程一
pytorch C++ cuda原创 2022-11-11 19:49:53 · 997 阅读 · 0 评论 -
自定义 C++ 和 CUDA 扩展
pytorch cuda/c++ 拓展原创 2022-11-11 10:40:58 · 1357 阅读 · 0 评论 -
CUDA 学习——纹理内存(CUDA实战 第七章)
1. 纹理内存使用纹理内存的使用依赖于API函数。下面直接给出常见的使用流程:1.1 声明纹理变量texture<Type, Dim, ReadMode> VarName;//Type: 前面提到的基本的整型和浮点类型,以及其它的对齐类型//Dim: 纹理数组的维度,值为1或2或3,默认缺省为1//ReadMode:cudaReadModelNormalizedFloat 或 cudaReadModelElementType(默认)NOTE:cudaReadModelNor原创 2022-05-18 22:42:17 · 2299 阅读 · 0 评论 -
CUDA 学习——常量内存与事件(CUDA实战 第六章)
1.光线跟踪#include <stdio.h>#include <GL/glut.h> struct CPUBitmap { unsigned char *pixels; int x, y; void *dataBlock; void (*bitmapExit)(void*); CPUBitmap( int width, int height, void *d = NULL ) { pixels =原创 2022-05-18 17:13:34 · 424 阅读 · 0 评论 -
CUDA 学习——线程协助(CUDA实战 第五章)
1.使用线程实现小型矢量加法add#include <stdio.h>#define N 10__global__ void add( int *a, int *b, int *c ) { int tid = threadIdx.x; if (tid < N) c[tid] = a[tid] + b[tid];}int main( void ) { int a[N], b[N], c[N]; int *dev_a, *d原创 2022-05-18 14:09:37 · 343 阅读 · 0 评论 -
CUDA 学习(CUDA实战 第四章)
1.矢量求和1.1 CPU#include <stdio.h>#define N 10void add( int *a, int *b, int *c ) { int tid = 0; // this is CPU zero, so we start at zero while (tid < N) { c[tid] = a[tid] + b[tid]; tid += 1; // we have one CPU, s原创 2022-05-18 09:17:58 · 254 阅读 · 0 评论 -
CUDA 学习(CUDA实战 第三章)
1. hello_world1.1 hello_world(CPU)#include <stdio.h>int main( void ) { printf( "Hello, World!\n" ); return 0;}1.2 hello_world(GPU)#include <stdio.h>__global__ void kernel( void ) {}int main( void ) { kernel<<<1,原创 2022-05-17 22:05:34 · 176 阅读 · 0 评论