hvr*_*hvr 9 haskell
我面临着将大型数据集编译为磁盘表示的一般问题,可以将其有效地反序列化为本机内存中的Haskell数据结构.
更具体地说,我有大量的图形数据,其中包含与边和顶点相关的各种属性.在C/C++中,我已经将数据编译成mmap()能够最大效率的表示,目前导致大约200MiB的C结构(并且其文本表示大约为600 MiB).
mmap()
在(GHC)Haskell,我能做的下一个最好的事情是什么?
fuz*_*fuz 6
使用包二进制文件.它提供了一个工具箱,可以有效地序列化和反序列化Haskell中的数据.binary可以为您自动派生所需的类型类的实例,但您也可以手动编写优化的实例.
引自原始描述页面:
二进制包 使用惰性ByteStrings的高效,纯二进制序列化.Haskell值可以编码为二进制格式,也可以编码为二进制格式,或通过网络发送.已经观察到超过1 G/sec的序列化速度,因此该库应该适用于高性能场景.
使用惰性ByteStrings的高效,纯二进制序列化.Haskell值可以编码为二进制格式,也可以编码为二进制格式,或通过网络发送.已经观察到超过1 G/sec的序列化速度,因此该库应该适用于高性能场景.
归档时间:
14 年,5 月 前
查看次数:
573 次
最近记录: