使用Matlab,我将生成几个数据文件并将它们以H5格式存储为20x1500xN
,其中N是一个可以变化的整数,但通常在2300左右。每个文件将有4个具有相同结构的不同数据集。因此,我将很快实现存储问题。我的两个问题:在Matlab中使用HDF5/H5优化压缩
有什么理由不分割的4个不同的数据集,并只保存为
4x20x1500xN
呢?我宁愿让它们分裂,因为它是不同的信号形式,但是如果有任何计算/压缩优势而不让它们分离,我会加入它们。使用Matlab的内置压缩,我设置了
deflate=9
(和DataType=single
)。不过,我现在已经意识到使用deflate
会将我的计算时间与5相乘。我意识到这可能与我的ChunkSize
有关,我只是将它放在20x1500x5
之后 - 没有任何推理。有没有一种战略方法来优化计算负荷w.r.t.通缩和压缩时间?
谢谢。
比较你用'save('example.mat','yourdata',' - v7.3')'得到的性能和文件大小。它写了一个gip压缩HDF5,根据我的经验,在速度和压缩之间有一个很好的折中。意识到我直接停止使用hdf5库。 – Daniel
@Daniel事情是我要用parfor循环写入这个文件,这就是我选择使用H5的原因。 –
没有理由不使用保存在上下文中:http://www.mathworks.com/matlabcentral/answers/135285-how-do-i-use-save-with-a-parfor-loop-using-parallel -computing-toolbox – Daniel