我有兴趣尝试使用GPU模拟器,但我尝试使用Multi2Sim,GPGPU-sim和Ocelot,对于这三个模拟器中的每一个,我都遇到了一个问题,因为它很难找到解决方案。互联网。我将描述每个模拟器的问题,也许你可以提供帮助。首先,为了给你一些详细的背景,我使用的是Ubuntu 12.04 LTS。
Multi2Sim表示它与64位不兼容,所以你应该编译为32位。如果我编译32位的CUDA代码,那么当我运行编译的可执行文件时,我收到错误消息“CUDA驱动程序版本不足以支持CUDA运行时版本”。如果我编译32位的OpenCL代码,那么当我运行已编译的可执行文件时,我发现函数clGetPlatformIDs没有给我在编译64位时得到的Nvidia OpenCL平台。
GPGPU-sim的文档说:
我们使用NVIDIA驱动程序版本256.40在GPGPU-Sim上测试了OpenCL http://developer.download.nvidia.com/compute/cuda/3_1/drivers/devdriver_3.1_linux_64_256.40.run 请注意,最新版本的NVIDIA驱动程序会生成与此版本的GPGPU-Sim不兼容的PTX。
我有NVIDIA驱动程序版本295.49。当我从“系统设置”查看“附加驱动程序”时,我看到列出的两件事:“NVIDIA加速图形驱动程序(当前版本)[推荐]”和“NVIDIA加速图形驱动程序(发布后更新)(版本当前更新) ”。第一个被激活,所以我点击删除,然后第二个自动激活。所以我决定尝试安装版本256.40,我收到了这个错误信息,这只会吓到我:
ERROR: If you are using a Linux 2.4 kernel, please make sure
you either have configured kernel sources matching your
kernel or the correct set of kernel headers installed
on your system.
If you are using a Linux 2.6 kernel, please make sure
you have configured kernel sources matching your kernel
installed on your system. If you specified a separate
output directory using either the "KBUILD_OUTPUT" or
the "O" KBUILD parameter, make sure to specify this
directory with the SYSOUT environment variable or with
the equivalent nvidia-installer command line option.
Depending on where and how the kernel sources (or the
kernel headers) were installed, you may need to specify
their location with the SYSSRC environment variable or
the equivalent nvidia-installer command line option.
当我尝试构建Ocelot时,我得到以下内容,即使我按照“从LLVM SVN中提取并构建”的说明:
ocelot/ocelot/ir/implementation/ExternalFunctionSet.cpp:27:36: fatal error: llvm/Target/TargetData.h: No such file or directory