2013-04-07 91 views
0

我有一个任务,我必须从一个库中执行一个函数,我的版本在3个架构,nehalem,opteron和quad上执行。我已经获得了每个架构的运行时间,以及实际功能的运行时间。现在我必须使用gnuplot来创建一些图来进行比较,但我不知道如何使用它。我需要一些帮助来设置数据文件以及plot命令的外观。比方说,我有这样的数据文件(不知道怎么写它的工作):我不知道如何使用gnuplot数据文件

N = 10000(这是矩阵的阶)

对于Nehalem处理器:my_time cblas_tyme optimized_time

对于皓龙:my_time cblas_time optimized_time

For quad:my_time cblas_time optimized_time。

这应该会导致图形显示在具有不同功能的所有体系结构上计算10000x10000矩阵需要多长时间。

回答

0

好像你想绘制一个条形图。

数据文件例如:

"my_time nehalem" 100 
"cblas_tyme nehalem" 120 
"optimized_time nehalem" 100 
"my_time opteron" 200 
"cblas_tyme opteron" 222 
"optimized_time opteron" 202 
"my_time quad" 103 
"cblas_tyme quad" 100 
"optimized_time quad" 99 

您可以使用此绘制:

plot "data.dat" using 2:xtic(1) with histogram 

更多的直方图的例子见herehere了解更多信息。

编辑:

解决您的意见,您可能需要使用的数据文件(比如data.dat文件)与此类似:

N simple-quad simple-nehalem simple-opteron alt-quad alt-nehalem alt-opteron 
10000 2 3 3 2 7 7 
15000 5 4 4 7 14 14 
20000 10 12 12 15 17 20 

你可以用下面的脚本绘制这样的:

set autoscale y 
set autoscale x 
set grid 
set xtic auto 
set ytic auto 
set xlabel "N" 
set ylabel "Time" 
plot "data.dat" every ::1 using 1:2 title "simple-quad" with linespoints, \ 
"data.dat" every ::1 using 1:3 title "simple-nehalem" with linespoints \ 
"data.dat" every ::1 using 1:4 title "simple-opteron" with linespoints \ 
"data.dat" every ::1 using 1:5 title "alt-quad" with linespoints \ 
"data.dat" every ::1 using 1:6 title "alt-nehalem" with linespoints \ 
"data.dat" every ::1 using 1:7 title "alt-opteron" with linespoints 
+0

谢谢你的好先生,只要我得到一个空闲时间和尝试,我会选择你的答案 – user1272703 2013-04-07 17:35:02

+0

我还有一个问题,如果你不再次帮助我。我想要制作一个像http://ge.tt/1ukYnPd/v/0这样的整体性能曲线。我希望在X轴上的值为N,在Y轴上的时间为X轴。我将如何更改数据文件,以及gnuplot中的设置?所以我会为我的nehalem,opteron,我的quad,N = 10,000 - > N = 30.000,时间为5000 – user1272703 2013-04-08 10:12:22

+0

@ user1272703编辑我的答案。该脚本非常明了,但如果您需要某些内容,我会很乐意提供解释。另外,请记住Google是你的朋友。 ;) – SidR 2013-04-09 03:57:53

相关问题