常见的Lisp内存问题

时间:2017-01-12 02:11:40

标签: clisp

我正在使用GNU Clisp计算一个非常大的矩阵,表示为哈希表的哈希表。存储的最终哈希值是单个浮点数。

程序似乎在一段时间后内存不足,我想我需要

  1. 以某种方式更改最终值的变量类型,以便使用更少的内存
  2. 让操作系统分配更多内存
  3. 以某种方式使用硬盘驱动器中的虚拟内存;或其某些组合。
  4. 有什么建议吗?我做了很多搜索,找不到任何东西。

1 个答案:

答案 0 :(得分:1)

  1. 您可以使用short-float - 它们可以立即在CLISP支持的所有平台上使用。

  2. 根据您的平台,您可能希望使用-m选项来分配更多内存,但我认为这在现代平台上没有任何区别 - CLISP将分配它所需的全部内容去,直到物理+交换。

  3. 应使用OS启用虚拟内存(交换)。请注意,与物理RAM相比它非常慢,所以应该明智地依赖它。