Haskell计划的in-hc简介是什么意思?

Haskell计划的in-hc简介是什么意思?,haskell,memory,profiling,Haskell,Memory,Profiling,我正在尝试分析我的应用程序。当使用-hcRTS选项分析内存使用情况时,我注意到很多内存被标记为固定。使用-hy运行时,内存被标记为ARR\u WORDS 该程序使用hmatrix软件包中的Data.packeted.matrix模块创建了一个2400×2400的双精度矩阵,由于其中的元素应该存储在连续内存中,我看不到矩阵占用这么多空间的方法 我的问题是:被钉住的单词实际上是什么意思?还有没有一种方法可以获得关于内存使用的原因和位置的进一步信息 如果有人对它感兴趣的话,整个源代码都有问题。然而,

我正在尝试分析我的应用程序。当使用
-hc
RTS选项分析内存使用情况时,我注意到很多内存被标记为固定。使用
-hy
运行时,内存被标记为
ARR\u WORDS

该程序使用hmatrix软件包中的
Data.packeted.matrix
模块创建了一个2400×2400的双精度矩阵,由于其中的元素应该存储在连续内存中,我看不到矩阵占用这么多空间的方法

我的问题是:被钉住的单词实际上是什么意思?还有没有一种方法可以获得关于内存使用的原因和位置的进一步信息

如果有人对它感兴趣的话,整个源代码都有问题。然而,这远远不是最简单的例子。

固定的数据意味着不允许垃圾收集器移动它。例如,这有助于通过FFI将数据传递给C函数。您不希望GC在执行C调用时移动数据


Soylet Green给出了上面的相关链接()。

在实践中,这可能意味着
ByteString
,它是用pinted
ByteArray实现的。