如何编译dan运行Graph500基准测试

时间:2017-02-02 04:07:53

标签: graph benchmarking

我目前正在研究Graph500基准测试。我已下载基准代码并尝试在单个节点(多线程)中编译和运行它。我已阅读README并编辑了Makefile,然后在不同的节点中编译并运行它们,但它们都给了我相同的错误。

$ wget http://www.graph500.org/sites/default/files/files/graph500-2.1.4.tar.bz2
$ tar xvjf graph500-2.1.4.tar.bz2
$ cd graph500-2.1.4
$ cp make-incs/make.inc-gcc make.inc
$ nano Makefile     {here I edit line 4: BUILD_OPENMP = Yes}
$ make

这是命令' make':

的结果
cc -g -std=c99 -DUSE_MMAP_LARGE -DUSE_MMAP_LARGE_EXT -I./generator seq-list/seq-list.c graph500.c options.c rmat.c kronecker.c verify.c prng.c xalloc.c timer.c generator/splittable_mrg.c generator/graph_generator.c generator/make_graph.c generator/utils.c -lm -lrt -o seq-list/seq-list
cc -g -std=c99 -DUSE_MMAP_LARGE -DUSE_MMAP_LARGE_EXT -I./generator seq-csr/seq-csr.c graph500.c options.c rmat.c kronecker.c verify.c prng.c xalloc.c timer.c generator/splittable_mrg.c generator/graph_generator.c generator/make_graph.c generator/utils.c -lm -lrt -o seq-csr/seq-csr
cc -g -std=c99 -fopenmp -DUSE_MMAP_LARGE -DUSE_MMAP_LARGE_EXT -I./generator make-edgelist.c options.c rmat.c kronecker.c prng.c xalloc.c timer.c generator/splittable_mrg.c generator/graph_generator.c generator/make_graph.c generator/utils.c -lm -lrt -o make-edgelist
cc -g -std=c99 -fopenmp -DUSE_MMAP_LARGE -DUSE_MMAP_LARGE_EXT -I./generator omp-csr/omp-csr.c graph500.c options.c rmat.c kronecker.c verify.c prng.c xalloc.c timer.c generator/splittable_mrg.c generator/graph_generator.c generator/make_graph.c generator/utils.c -lm -lrt -o omp-csr/omp-csr

我注意到它生成了四个可执行文件:make-edgelist,seq-list,seq-csr,omp-csr。

然后我尝试使用这个命令构建图形,make-edgelist我相信它使用Kronecker算法来构造图形,但它给了我错误(出现了很多奇怪的字符):

$ ./make-edgelist
3%???(?<? ?!
F0?5?8?D?$q??8';?(2C0??Z232x5??=:?-?:w2'??:? Z,{5}4 ? g2? g2? g2@A g2`?D?! g2
mmap failed: Cannot allocate memory
Aborted (core dumped)

然后我尝试运行其他可执行文件但仍然给我错误。

$ cd seq-list
$ ./seq-list
mmap failed: Cannot allocate memory
Aborted (core dumped)

我想知道我是否做了正确的程序。 谢谢。

1 个答案:

答案 0 :(得分:2)

编辑你的make.inc并从那里删除-DUSE_MMAP_LARGE -DUSE_MMAP_LARGE_EXT,除非你用正确的选项启动你的内核