Skip to content

Commit 498bd6b

Browse files
authored
Cuda 12 (#69)
* Update jit.go - comment out old JIT Target compute 20, 21 * Update params.go - move to the _func trick Support the new cuda 12 structure (v2) * Update params.go - define the function prototype hides a warning * Update api.go - hide deprecated api warnings
1 parent 60c34ed commit 498bd6b

File tree

3 files changed

+16
-13
lines changed

3 files changed

+16
-13
lines changed

api.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
package cu
22

3-
// #include <cuda.h>
3+
/*
4+
#cgo CFLAGS: -Wno-deprecated-declarations
5+
6+
#include <cuda.h>
7+
*/
48
import "C"
59
import "unsafe"
610

jit.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,8 +135,8 @@ const (
135135
// JITTarget11 JITTargetOption = C.CU_TARGET_COMPUTE_11
136136
// JITTarget12 JITTargetOption = C.CU_TARGET_COMPUTE_12
137137
// JITTarget13 JITTargetOption = C.CU_TARGET_COMPUTE_13
138-
JITTarget20 JITTargetOption = C.CU_TARGET_COMPUTE_20
139-
JITTarget21 JITTargetOption = C.CU_TARGET_COMPUTE_21
138+
// JITTarget20 JITTargetOption = C.CU_TARGET_COMPUTE_20
139+
// JITTarget21 JITTargetOption = C.CU_TARGET_COMPUTE_21
140140
JITTarget30 JITTargetOption = C.CU_TARGET_COMPUTE_30
141141
JITTarget32 JITTargetOption = C.CU_TARGET_COMPUTE_32
142142
JITTarget35 JITTargetOption = C.CU_TARGET_COMPUTE_35

params.go

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package cu
33
/*
44
#include <cuda.h>
55
6+
void handleCUDACB(void* fn);
67
void CallHostFunc(void* fn){
78
handleCUDACB(fn);
89
};
@@ -28,16 +29,14 @@ func (p *KernelNodeParams) c() *C.CUDA_KERNEL_NODE_PARAMS {
2829
// here anonymous initialization of struct fields is used because `func` is a keyword.
2930
// see also: https://github.com/golang/go/issues/41968
3031
retVal := &C.CUDA_KERNEL_NODE_PARAMS{
31-
p.Func.fn,
32-
C.uint(p.GridDimX),
33-
C.uint(p.GridDimY),
34-
C.uint(p.GridDimZ),
35-
C.uint(p.BlockDimX),
36-
C.uint(p.BlockDimY),
37-
C.uint(p.BlockDimZ),
38-
C.uint(p.SharedMemBytes),
39-
nil,
40-
nil,
32+
_func: p.Func.fn,
33+
gridDimX: C.uint(p.GridDimX),
34+
gridDimY: C.uint(p.GridDimY),
35+
gridDimZ: C.uint(p.GridDimZ),
36+
blockDimX: C.uint(p.BlockDimX),
37+
blockDimY: C.uint(p.BlockDimY),
38+
blockDimZ: C.uint(p.BlockDimZ),
39+
sharedMemBytes: C.uint(p.SharedMemBytes),
4140
}
4241
return retVal
4342
}

0 commit comments

Comments
 (0)