zoukankan      html  css  js  c++  java
  • JCUDA thread context 测试

    在C++中,可以使用runtime api 创建一个primary context,从而多个线程多享,避免了使用drive api 创建多个 standard context的时间开销。

    在Java中也试图尝试 使用runtime api 创建一个primary context,但问题是,发现对于Java不适用,在一个thread创建的primary context ,在另外一个线程中无法使用。 

    所以,最后还是使用driver api 创建的多个standard context

    注意:

    在Jcuda给出的例子中都是使用 driver API进行Java到 CUDA的接口。我是怎么找到 runtime api? 

    看Jcuda的源代码 https://github.com/jcuda/jcuda/blob/master/JCudaRuntimeJNI/src/JCudaRuntime.cpp

    根据源代码找出相应的 java port function

    实际上:Jcuda是在JNI的基础上实现了 java 和 cuda 之间的联系的

    因为,每个java port function 都是会调用一个JNI function,在该JNI function中调用cuda。

    Java (程序)  ->  Java (接口类,它的函数成员是接口) ->   JNI function (JNI接口) ->  C++(调用cuda)

    看Jcuda的源代码就明白了。

  • 相关阅读:
    窗口
    DataTemplateSelector
    CompositeCollection
    Drawing
    模板
    集合视图
    绑定
    动画
    【数据结构初学】(java实现篇)——队列(转)
    慕课学习手记!(完成查找书籍小程序~)
  • 原文地址:https://www.cnblogs.com/xingzifei/p/6120147.html
Copyright © 2011-2022 走看看