julia - 如何在 Julia 中设置 "free"变量?

标签 julia

我正在编写一个适用于大型数据集和其他一些相关计算的机器学习程序。由于数据集可能非常大,因此某些计算会生成非常大的矩阵(例如 29,000 x 29,000 Array{Float64,2}),并且它们需要大量存储空间 (RAM)。在该过程的后期,一些元素(如初始数据集)不再需要,但它们仍在浪费内存空间。

有没有办法在某个时候“释放”变量?或者,有没有办法共享一些硬盘部分,比如交换空间?

最佳答案

总结一下……典型的方法是用需要很少内存的对象覆盖不必要地消耗内存的对象。摘自常见问题解答(如上链接):

For example, if A is a gigabyte-sized array that you no longer need, you can free the memory with A = 0. The memory will be released the next time the garbage collector runs; you can force this to happen with gc().



如果你想创建一个新的工作区(即清除所有变量),这是通过
    workspace()

关于julia - 如何在 Julia 中设置 "free"变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24026160/

相关文章:

宏变量和 eval 的 Julia 作用域

metaprogramming - Julia:构建符号表达式

dataframe - 在 Julia 中,如果某些列不同,我如何组合多个数据框?

julia - 如何在 Julia 中获取输入字符?

indexing - Julia - 如何用索引向量的向量来索引向量?

c++ - 如何在 C++ 中使用 Julia 特殊函数

arrays - 在 julia 中合并两个排序数组

julia - 如何在Julia中重新安装或重新编译已安装的软件包?

julia - &-ing Julia 中的两个位数组?

printf - 如何指定在 julia 中打印 float 数组的格式?