相关疑难解决方法(0)

如果从命令行运行Julia脚本,是否每次都需要重新编译?

我已经阅读了相当多的文档和问题,但我仍然对此感到困惑.

在文档的Profiling部分,建议首先在REPL中运行一次目标函数,以便在分析之前编译它.但是,如果脚本相当复杂并且打算在命令行中运行,接受参数怎么办?当julia进程完成并且我第二次运行脚本时,是否再次执行编译?像/sf/answers/2942853441/这样的帖子,Julia每次编译脚本?给出相互矛盾的答案.当朱莉娅不断发展时,它们似乎也老了.

在我看来,第二次运行所需的时间与我的经验中的第一次运行完全相同.启动时间很长.我该如何优化这样的程序?添加__precompile__()似乎根本没有改变执行时间.

另外,当我想描述这样一个程序时,我该怎么办?关于分析的所有资源都在REPL中讨论这样做.

profiling compilation read-eval-print-loop julia

5
推荐指数
2
解决办法
1199
查看次数

如何加快 Julia 脚本的启动时间

我编写了一个脚本来在 Julia 中绘制每日数据,但我发现它运行缓慢。似乎没有理想的方法来加速它。

例如 foo.jl

#!/bin/bash
#=
exec julia -O0 --compile=min "${BASH_SOURCE[0]}" "$@"
=#

using UnicodePlots, CSV, DataFrames, Chain, Dates
...
Run Code Online (Sandbox Code Playgroud)

我希望如果我第一次运行“foo.jl a.csv b.csv”,可能需要时间来编译/加载(10秒)。第二次运行它时,它可以跳过编译过程。(它应该大约3秒)。

现在可以吗?我使用的是1.8.3版本。或者,我可以设置每次启动 julia 时默认编译的那些软件包以加快速度吗?

julia

4
推荐指数
1
解决办法
747
查看次数

朱莉娅中未显示情节

我有一个名为 mycode.jl 的文件,其中包含从此处获取的以下代码。

using MultivariateStats, RDatasets, Plots

# load iris dataset
println("loading iris dataset:")
iris = dataset("datasets", "iris")
println(iris)
println("loaded; splitting dataset: ")

# split half to training set
Xtr = Matrix(iris[1:2:end,1:4])'
Xtr_labels = Vector(iris[1:2:end,5])

# split other half to testing set
Xte = Matrix(iris[2:2:end,1:4])'
Xte_labels = Vector(iris[2:2:end,5])

print("split; Performing PCA: ")


# Suppose Xtr and Xte are training and testing data matrix, with each observation in a column. We train a PCA model, allowing up to 3 …
Run Code Online (Sandbox Code Playgroud)

plot julia

2
推荐指数
1
解决办法
5495
查看次数