如何高效地分析具有各种自由度的模拟结果?

如何高效地分析具有各种自由度的模拟结果?

我做了很多应用程序测试,尝试了不同的库、线程比率、操作分布等......我希望能够从我的运行数据中快速生成图表。

数据输出到制表符分隔的文件中,该文件在概念上分为左半部分和右半部分。每行都是一个单独的执行配置。

左半部分是各种配置参数,右半部分是一系列执行时间。(例如,我们可能会运行配置 20 次以确保平均值均匀)

我希望能够快速绘制这些数据的图表和/或计算标准差等值。

例如,我将指定右半部分中的一列用作 X 轴,而右半部分的其余列将用于标识用于生成该线的执行配置。Y 轴始终是执行时间(或标准化性能)

例如左侧可以是

| 线程 | 元素 | 算法A | 算法B |
|---------+----------+------------+------------|
| 1 | 100 | t1a | t1b |
| 2 | 100 | t1a | t1b |
| 3 | 100 | t1a | t1b |
| 1 | 100000 | t1a | t1b |
| 2 | 100000 | t1a | t1b |
| 3 | 100000 | t1a | t1b |
|---------+----------+------------+------------|
| 1 | 100 | t2a | t1b |
| 2 | 100 | t2a | t1b |
| 3 | 100 | t2a | t1b |
| 1 | 100000 | t2a | t1b |
| 2 | 100000 | t2a | t1b |
| 3 | 100000 | t2a | t1b |
|---------+----------+------------+------------|
| 1 | 100 | t2a | t2b |
| 2 | 100 | t2a | t2b |
| 3 | 100 | t2a | t2b |
| 1 | 100000 | t2a | t2b |
| 2 | 100000 | t2a | t2b |
| 3 | 100000 | t2a | t2b |
|---------+----------+------------+------------|
| 1 | 100 | t1a | t2b |
| 2 | 100 | t1a | t2b |
| 3 | 100 | t1a | t2b |
| 1 | 100000 | t1a | t2b |
| 2 | 100000 | t1a | t2b |
| 3 | 100000 | t1a | t2b |
|---------+----------+------------+------------|

如果 X 轴是线程,那么将有 8 行,每行有 3 个数据点,然后过滤为只有一个元素大小。如果 X 轴是元素,那么将有 16 行,每行有 2 个数据点,然后我将过滤为只有一个线程级别。

我的谷歌搜索没有找到我喜欢的,也许我搜索了错误的关键词...所以我的问题是你能推荐什么应用程序来解决我的问题并让我的日子不那么重复。

答案1

你可以用 Python 完成所有这些操作伊班matplotlibpandas, 和一些statsmodels投入使用以达到更好的效果。还有一些其他依赖项,例如NumPy,因此请阅读文档。

我强烈建议阅读Python用于数据分析因为它会引导你了解我提到的所有软件包以及更多内容,尽管假设你具备 Python 的基本知识。

相关内容