【问题标题】:Can cuda be used combining with activeX technology?cuda可以和activeX技术结合使用吗?
【发布时间】:2011-07-12 20:10:29
【问题描述】:

每一个。我是cuda的新手。我想知道cuda可以结合ActiveX技术使用吗, 呈现的ocx或dll文件可以在网页中使用, 例如,使用 cuda 可以轻松模拟流体粒子。 如果结合 cuda 和 activeX 技术, 我们可以在网页中看到流体粒子,对吗? 更重要的是,如果我模拟大量粒子时出现问题? 非常感谢。

【问题讨论】:

    标签: c++ activex cuda parallel-processing nvidia


    【解决方案1】:

    我认为,如果 ActiveX 可以在运行任意 CUDA 代码这样的低级别访问您的 GPU,那将是一个很大的安全风险。另一方面,如果 ActiveX 可以通过一些更高级别的接口在 GPU 上执行一些计算,那会更安全,但必须由 Microsoft 来实现它,而不是你。

    【讨论】:

    • 是的,你是对的,这将是一个很大的安全风险,但是带有数字签名的activex文件可以在IE或其他网络浏览器上畅通无阻地运行,实际上我想在我的网页上显示更好的效果,但是它会花费计算,所以我想我是否可以将activex和cuda结合起来作为解决方案。非常感谢。
    • 你是对的,这将是一个很大的安全隐患,也许带有数字签名的activex文件可以在IE或其他网络浏览器上畅通无阻地运行。实际上我想在我的网页上显示更好的效果,比如粒子、水、烟、树等。但是它们是计算成本,所以我在考虑是否可以将 activex 和 cuda 结合起来作为解决方案。如果您有其他想法要告诉我,我会打从心底感谢您。
    • “如果你有其他想法可以告诉我” - 恐怕我没有。我对 ActiveX 几乎一无所知。我与 CUDA 合作。但是 CUDA 中的错误可能导致系统完全挂起和/或您的显示器冻结 - 因此我迫在眉睫。
    • “CUDA 中的错误可能导致系统完全挂起和/或您的显示器死机” - 您指的是哪种错误?你能详细解释一下吗?更加感谢你。
    • 我的意思是你的 CUDA 源代码中的一个错误。 GPU 在实模式下运行,内存没有真正受到保护,您可以(无意或无意)覆盖一些敏感数据。有时 Windows 无法从这些问题中恢复。 Win7通常只是重置GPU,但XP可以完全挂起。
    【解决方案2】:

    受信任的 ActiveX 控件可以做任何事情。所以,是的,理论上你可以启动 CUDA 运行时并带着 GPU 进城。您需要使用 ActiveX 控件分发 CUDA 运行时,但假设它们使用的是 nVidia GPU,则您需要的所有其他东西都已经安装。 FWIW,根据 CUDA 开发人员工具包上的 EULA, 允许分发 cudart.dll。

    因为,last I read,您不能静态链接到 cudart.dll,您需要使用 CAB 文件将该依赖项与您的 ActiveX 控件一起分发。 Details on creating CAB files can be found here on MSDN。再一次,那个论坛帖子是 2008 年的,所以也许现在可以静态链接较新版本的 cudart.dll ......你可能想试一试。

    【讨论】:

    • 谢谢,还有,你的意思是“你需要用 ActiveX 控件分发 CUDA 运行时”,你能详细解释一下吗?
    • 用户机器上不存在 cudart.dll,因此您需要将其与 ActiveX 控件一起打包,以便获得对用户机器的依赖。您需要考虑在 CAB 文件中分发 ActiveX 控件来完成此操作,因为我上次听说,您不能静态链接 cudart.dll。我将在答案中添加有关包装的更多详细信息。
    • 是的,你是对的,我知道activeX使用CAB文件执行,我也知道如何将DLL或ocx类型文件打包成CAB文件,但我不知道你在“不能静态链接到 cudart.dll”是什么意思。或者您的意思是我应该将 cudart.dll 和我的 activex 控制文件打包到 CAB 文件中,以供 Web 浏览器下载。然后在PC上会有我的activex控制文件和cucart.dll文件。那么我可以成功运行cuda程序吗?我说的对吗?
    • 只要用户拥有支持 CUDA 的 nvidia GPU 以及最新的驱动程序,就可以了。如果您可以静态链接到 cudart.dll,您只需要担心分发您自己的 DLL。
    • 如果此信息对您有用,请点赞(如果不将此标记为答案)怎么样?
    【解决方案3】:

    首先,它在客户端计算机上运行。这意味着客户端需要启用 CUDA 的显卡(仅限 nVidia)。

    【讨论】:

    • 也就是说,如果我有nvidia卡,使用activex技术可以获得与本地相同的性能吗?谢谢你的回复
    • 你能详细解释一下吗?谢谢。
    • 欢迎任何想法,非常感谢。
    猜你喜欢
    • 2019-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-22
    • 2015-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多