julia - 如何测量 Julia 中的 RAM 消耗和计算时间?

标签 julia ubuntu-16.04 ram memory-consumption

我正在开发不同的离散化方案,为了找出最有效的方案,我想确定最大 RAM 消耗和执行特定任务所需的时间,例如求解方程组,覆盖矩阵或将数据写入文件。

有没有什么代码可以满足我的需要? 顺便说一句,我在 Ubuntu 中使用 Julia,但我也可以在 Windows 中使用它。

非常感谢

最佳答案

我喜欢使用内置的 @time 来处理这种事情。参见 "Measure performance with @time and pay attention to memory allocation" .示例:

julia> @time myAwesomeFunction(tmp);
  1.293542 seconds (22.08 M allocations: 893.866 MiB, 6.62% gc time)

这会打印出时间、内存分配的数量、内存分配的大小以及垃圾收集(“gc”)所花费的时间百分比。 始终至少运行两次——第一次运行将由编译时间决定!

同时考虑 BenchmarkTools.jl .这将多次运行代码,使用一些很酷的变量插值技巧,并为您提供更好的运行时/内存估计:

julia> using BenchmarkTools, Compat

julia> @btime myAwesomeFunction($tmp);
  1.311 s (22080097 allocations: 893.87 MiB)

(我最喜欢的另一个与性能相关的东西是 @code_* 函数系列,例如 @code_warntype。)

关于julia - 如何测量 Julia 中的 RAM 消耗和计算时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49826604/

相关文章:

julia - 如何在 julia 中漂亮地打印嵌套的字典?

julia - 为什么不能解析将 float 字符串转换为 int?

julia - Julia:连接字符串和整数

android - 如何制作 RAM 内存为 'eats' 的 Android 应用程序

Java - 阅读有关另一个程序的信息?

julia - 跳转 : How to get multiple solutions from getvalue(x)

python - 无法从 Ubuntu 16.04 卸载 anaconda

webdriver - Protractor : WebDriverError : could not initialize sun. security.ssl.SSLContextImpl$TLSContext

mysql - 如何在ubuntu中使用同一局域网向另一台计算机授予对mysql数据库的访问权限?

intel - AVX2 中的收集指令是如何实现的?