gpt4 book ai didi

julia - Julia 中的最大数组长度

转载 作者:行者123 更新时间:2023-12-03 15:21:19 26 4
gpt4 key购买 nike

我可以创建一个 的数组万像这样的元素:

Array(1:1_000_000)
Vector{Int64} with 1000000 elements

但是如果我尝试创建一个 的数组亿 元素我得到这个:
Array(1:1_000_000_000)
Julia has exited.
Press Enter to start a new session.

Julia 是否无法处理数组中的十亿个元素,或者我在这里做错了什么?

最佳答案

您正在创建一个数组 Int64 ,每一个都需要存储在内存中:

julia> sizeof(3)
8

所以在某些时候你肯定会耗尽内存——这不是由于数组中元素数量的一些固有限制,而是整个数组的大小,而这又取决于每个元素的大小.考虑:
julia> sizeof(Int8(3))
1

julia> [Int8(1) for _ in 1:1_000_000_000]
1000000000-element Array{Int8,1}:
1
1
1

1
1
1

所以用更小的数据类型(8 位而不是 64 位整数)填充数组允许我创建一个包含更多元素的数组。

关于julia - Julia 中的最大数组长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61171898/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com