c - 如何创建 CUDA makefile 以便在 CPU 中执行以测试 CPU FLOP?

标签 c makefile cuda flops

我正在尝试计算 GPU 和 CPU 的 FLOP 次数,并且我从 here 获取了源代码

我将其重命名为 cudaflops.cu 并使用此 makefile 对其进行编译

################################################################################
#
# Build script for project
#
################################################################################

# Add source files here 
EXECUTABLE  := benchmark
# Cuda source files (compiled with cudacc) 
CUFILES     := cudaflops.cu
# C/C++ source files (compiled with gcc / c++) 
CCFILES     := 


################################################################################
# Rules and targets

include ../../common/common.mk

#########################################

Tt 工作正常并给出结果 367 GFlOPs

但是现在,我不知道在CPU中测试这个源,我读了this上面说源代码可以在 CPU 上运行。

那么修改makefile怎么办呢?

最佳答案

嘿,问题是你需要 portland group 编译器才能在 x86 上运行你的代码: hxxp://www.prnewswire.com/news-releases/pgi-to-develop-compiler-based-on-nvidia-cuda-c-architecture-for-x86-platforms-103457159.html

此外,该文章称该编译器将于 2010 年 11 月 13 日至 15 日进行演示,因此我不确定它何时会公开可用(可能是 Beta 版本)。 (也就是说,不,您还不能在 x86 上本地运行 CUDA)。

现在最简单的事情是编写一个 C/C++ 函数,该函数完全执行该基准测试的功能(它应该非常容易移植)。他们的 SDK 中有一些 CUDA 示例比较了 CPU 和 GPU(我认为是矩阵乘法),所以首先尝试一下(它基本上应该做与基准代码完全相同的事情,除了“现实世界”的情况)如果您只是想提高 GPU/CPU 性能。

甚至更简单:向 NVIDIA 论坛询问有关您的显卡的信息 - 他们喜欢告诉每个人他们的 GPU 与 CPU 性能(只需说“我有 x GPU,我得到 y GFLOPS - 其他人得到的 GPU 与 CPU 的结果如何?”)。

关于c - 如何创建 CUDA makefile 以便在 CPU 中执行以测试 CPU FLOP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3989880/

相关文章:

c - 指针初始化和两个指针指向同一个地址

c - 在 C 中包含源文件

c++ - CUDA 内核调用阻塞?

lisp - CUDA 的任何 Lisp 扩展?

c++ - cudaMemcpyFromSymbol和cudaMemcpyToSymbol始终返回cudaErrorInvalidSymbol(13)错误

c++ - 在SDL中使 Sprite 的背景透明

c - 编译 OCILIB OCI Wrapper 库的问题

c - 如何在 Makefile 中实现 "make install"?

windows - 尝试在 Windows 上使用 make 编译会出现错误 127

c++ - Makefile 统计有多少个文件