小编Bib*_*rak的帖子

将CUDA静态或共享库与gcc链接的未定义引用错误

gcc和CUDA问题

嗨,

我编译了一个CUDA共享库,但无法将其与使用它的主程序链接.我用gcc编译主程序.

代码:

simplemain.c

    #include <stdio.h>
    #include <stdlib.h>



    void fcudadriver();

    int main()
    {
      printf("Main \n");
      fcudadriver();
      return 0;
    }
Run Code Online (Sandbox Code Playgroud)

test.cu

    __global__ void fcuda()
    {
    }

    void fcudadriver()
    {
      fcuda<<<1,1>>>();
    }
Run Code Online (Sandbox Code Playgroud)

我编译test.cu为 - >它的工作原理

    nvcc --compiler-options '-fPIC' -o libtest.so --shared test.cu
Run Code Online (Sandbox Code Playgroud)

我编译simplemain.c为--->它给出错误:(

    gcc simplemain.c -L. -ltest
    /tmp/ccHnB4Vh.o:simplemain.c:function main: error: undefined reference to 'fcudadriver'
    collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

c cuda shared-libraries undefined-reference nvcc

6
推荐指数
1
解决办法
2588
查看次数

如何在JVM中实现Java int []数组?

我试图理解JVM如何在内部实现原始类型的数组,如 int []

我的问题分为两部分:

1 - 它是否在内部使用ByteBuffer?我在哪里可以找到源代码,然后根据我的需要进行更改(以创建我自己的修改后的JVM).

2 - 有没有办法欺骗javac不使用内置实现,int []而是使用库中提供的实现,比如classpath -cp?这可能吗?怎么样?

我的动机是int []在JVM(使用allocateDirect())之外的内存中声明它,并从本机JNI代码访问它.这应该避免内存复制开销.

-B

java arrays performance java-native-interface jvm

5
推荐指数
1
解决办法
518
查看次数

printf 在 CUDA 计算上如何工作 &gt;= 2

早期printf不支持,我们要么使用模拟器运行 CUDA 程序,要么来回复制变量并在主机端打印。

既然 CUDA(arch 2 及更高版本)支持,printf我很想知道这是如何工作的?我的意思printf是屏幕上的GPU 内部如何?计算能力 1 的限制因素是什么?

c printf cuda gpu

1
推荐指数
1
解决办法
1113
查看次数

方案:如何制作'(5.(5))

我已经尝试了各种各样的缺点组合并附加产生'(5.(5))但我不能.有什么办法吗?

scheme append cons racket

0
推荐指数
1
解决办法
75
查看次数