git - 导入模块的多个版本/分支以在 Julia 中进行基准测试

标签 git julia benchmarking

如何在 Julia 的单个脚本中使用同一模块的多个不同版本或分支?

例如如果我想对每个标记的版本进行基准测试。

(最近有人问了类似的问题,我回答错了,不过这可能还是有用的。)

编辑:我自己回答了这个问题,但我相信他们可能是更好的方法!

最佳答案

您可以直接 git checkout 模块的不同版本,然后使用 benchmarkTools.jl 进行基准测试。然而,使用多个脚本可能会更好(或者至少忽略第一次试用)(有关更多信息,请参阅此评论 Importing multiple versions of the same Module/Package for Benchmarking)。

例如

packagedir = Pkg.dir("DSP")
version2checkout = "v0.0.7"
run(`cd $packagedir`); run(`git checkout tags/$version2checkout`)
import DSP
# do all your benmarking stuff
# start again

防止您不得不复制模块,但我猜还是有点笨拙。 您甚至可以通过捕获 git 标签的输出在多个版本的循环中执行此操作

for i in readlines(`git tag`)
    version2checkout = chomp(i)
    # checkout version and benchmark
end

关于git - 导入模块的多个版本/分支以在 Julia 中进行基准测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39225066/

相关文章:

php - 表现不佳

git - Git 中的文件限制是多少(数量和大小)?

Apache 基准负载测试 : mod_deflate enabled vs disabled

regex - 对 Perl 正则表达式进行基准测试时出现意外的速度行为

windows - Julia,Windows 10 上的 ArchGDAL 安装错误

julia - 如何在不导入 Julia 函数的情况下加载包模块

metaprogramming - 宏和字符串插值 (Julia)

git - 如何在不修改 master 的情况下将 master 中的任何并行更改 merge 到我的分支中?

python - 如何使用 GitPython 计算未发布的提交数?

java - 通过 Java 使用用户名和密码通过 ssh 克隆 git 存储库