Using varinfo() very slow when there is 3d data in the struct structure

There is a bug in using varinfo when there is three-dimensional data in the struct structure. When there is 3d data inside the structure, it will greatly slow down the corresponding response speed when using varinfo. The results are as follows:

mutable struct Block3d
    data2d::Matrix
    data3d::Array{AbstractFloat, 3}
end

bloct1=Block3d(zeros(80,20000),zeros(80,200,20));
@time varinfo(r"bloct1") #0.202150 seconds (1.35 M allocations: 47.145 MiB, 10.30% gc time, 20.11% compilation time)
bloct2=Block3d(zeros(80,20000),zeros(80,200,200));
@time varinfo(r"bloct2") #data3d*10  4.509268seconds (12.80 M allocations: 418.302 MiB, 13.65% gc time)
bloct3=Block3d(zeros(80,200000),zeros(80,200,20));
@time varinfo(r"bloct3") #data2d*10  0.233853 seconds (1.28 M allocations: 42.630 MiB)

#withoutstruct
blocu1=zeros(80,200,20);
@time varinfo(r"blocu1") # 0.000525 seconds (157 allocations: 31.719 KiB)
blocu2=zeros(80,200,200);
@time varinfo(r"blocu2") #  0.000941 seconds (158 allocations: 31.758 KiB) very fast

(Note: This is only expanded 10 times as a test, but in fact many three-dimensional data volumes are hundreds or thousands of times larger, which will cause a very bad experience)

When there is no structure, 3d data by varinfo is very fast. When there is a structure, varinfo will become very slow. 2d data within the structure does not affect the varinfo speed.

There is a large-sized data3d in my structure and I need to count the occupied space. Is there any other method?