我有一个作业,我必须从库中执行一个函数,我的版本在3个体系结构,nehalem,opteron和quad上执行。我已经为每个架构获取了我的运行时间,以及实际功能的运行时间。现在我必须用gnuplot创建一些图来对它们进行比较,但我不知道如何使用它。我需要一些帮助来设置数据文件以及plot命令的外观。假设我有这个数据文件(不知道如何写它来工作):
N = 10000(这是矩阵的顺序)
对于nehalem:my_time cblas_tyme optimized_time
对于opteron:my_time cblas_time optimized_time
对于quad:my_time cblas_time optimized_time。
这将导致显示在所有具有不同功能的架构上计算10000x10000矩阵所需的时间。
答案 0 :(得分: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
有关更多直方图示例,请参阅here;有关详情,请参见here。
修改强>
解决您的评论,您可能想要使用与此类似的数据文件(例如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