我是GPU编程的新手,使用brook+语言在ATI Stream Processor上进行暴力破解密码恢复,但我看到用brook+语言编写的内核不允许调用任何正常函数(内核函数除外),我的问题是:
1)这种情况下如何使用unrar.dll (解压归档文件)接口?这是编程RAR密码恢复的唯一方法吗?
2)使用图形处理器的crack和ElcomSoft软件如何工作?
3) GPU (ATI流处理器或CUDA)中的函数工作在此程序中到底扮演了什么角色?
4) nVidia/CUDA技术是否比ATI/brook+语言更简单/更灵活?
发布于 2010-06-18 08:24:55
1) unrar.dll是编译后的动态链接库。它们在CPU上执行。GPU有非常不同的机器代码和非常不同的执行模型,所以它们不能运行dlls。
您可以尝试通过事件实现从图形处理器到中央处理器的回调,或者在图形处理器上构建x86解释器,但这些解释器几乎肯定会比仅在中央处理器上运行慢。
使用unrar.dll并不是编写RAR密码恢复的唯一方法。相反,您可以从头开始为CPU和GPU构建自己的代码。
2)它们的工作方式是让CPU代码显式地请求某些GPU代码在GPU上运行。
3)我不是很清楚。我猜想,虽然它有一个GPU程序,尝试许多不同的组合,并从这些并行运行的好处。
4) CUDA比brook+更成熟。对于简单的任务,brook+可能同样简单,但功能不够全面。对于新项目,大多数人现在会选择OpenCL而不是brook+。
(我不确定您打算做什么,但上面的这些似乎都不太可能带来任何不祥的结果。)
https://stackoverflow.com/questions/1962928
复制相似问题