我的 linux VPS 上无用的 SBCL:ensure_space:无法分配 n 个字节
Useless SBCL on my linux VPS: ensure_space: failed to allocate n bytes
我无法在 VPS 上 运行 SBCL:
mmap: wanted 1040384 bytes at 0x20000000, actually mapped at 0x715fa2145000
ensure_space: failed to allocate 1040384 bytes at 0x20000000
(hint: Try "ulimit -a"; maybe you should increase memory limits.)
搜索得到:
- http://compgroups.net/comp.lang.lisp/useless-sbcl-on-win32-memory-problem/702748 => 使用
sbcl --dynamic-space-size 880
也不起作用。
- https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474402 => OP 将其交换扩大到 20Go。疯狂的。他们说它已在 SBCL 1.1 中修复。
我有 510MB 的免费交换空间,3GB 的免费 RAM。
更新: SBCL 1.2.4.debian
, Debian 8.2.
这个问题有解决办法吗?
顺便说一句,你如何部署 lisp apps?
谢谢!
ps:我无法使用 Roswell 安装其他实现(它基于 SBCL)。解决方法是使用 CCL (CCL Debian package) or Docker (daewok/lisp-devel)。
一种解决方案是在 VPS 上全局禁用 ASLR :
sudo bash -c "echo 0 > /proc/sys/kernel/randomize_va_space"
在那之后 SBCL 应该 运行 没问题。
我无法在 VPS 上 运行 SBCL:
mmap: wanted 1040384 bytes at 0x20000000, actually mapped at 0x715fa2145000
ensure_space: failed to allocate 1040384 bytes at 0x20000000
(hint: Try "ulimit -a"; maybe you should increase memory limits.)
搜索得到:
- http://compgroups.net/comp.lang.lisp/useless-sbcl-on-win32-memory-problem/702748 => 使用
sbcl --dynamic-space-size 880
也不起作用。 - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=474402 => OP 将其交换扩大到 20Go。疯狂的。他们说它已在 SBCL 1.1 中修复。
我有 510MB 的免费交换空间,3GB 的免费 RAM。
更新: SBCL 1.2.4.debian
, Debian 8.2.
这个问题有解决办法吗?
顺便说一句,你如何部署 lisp apps?
谢谢!
ps:我无法使用 Roswell 安装其他实现(它基于 SBCL)。解决方法是使用 CCL (CCL Debian package) or Docker (daewok/lisp-devel)。
一种解决方案是在 VPS 上全局禁用 ASLR :
sudo bash -c "echo 0 > /proc/sys/kernel/randomize_va_space"
在那之后 SBCL 应该 运行 没问题。