haskell - Data.ByteString.Lazy 中 block 的大小

标签 haskell lazy-evaluation bytestring

模块Data.ByteString.Lazy包含自己的ByteString类型实现:

data ByteString = Empty | Chunk !S.ByteString ByteString

there以下是关于 block 大小的短语:

The default chunk size is 64k, which should be good in most circumstances. For people with large L2 caches, you may want to increase this to fit your cache.

但是没有任何关于如何做到这一点的信息。如何增加默认 block 大小?另外,如果卡盘大小明显大于那些 L2 缓存,我是否会获得性能提升?

最佳答案

看来您必须编辑源代码并手动安装。

block 大小已设置 at the end of Data.ByteString.Lazy.Internal .

关于haskell - Data.ByteString.Lazy 中 block 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7804645/

相关文章:

haskell - 我们如何正式地说函数在参数中是非严格的?

haskell - Free 和 Cofree 的不动点仿函数

performance - Haskell 中 hFlush 的高 CPU 使用率

haskell - 有效地将 ByteString 转换为十六进制表示

sql-server - 是否可以使用 Haskell 和 Linux 连接到 SqlServer (MSSQL)?

haskell - 数据 (->) a b 是什么意思?

r - 使用字符串变量在 R 函数内部传递多个变量信息

swift - 惰性属性的内存管理

ruby - 默认情况下使可枚举对象惰性

Haskell, Aeson - (ToJSON ByteString) 没有实例