您的位置:首页 > 其它

Spark构建时的常见问题 之 JVM 启动失败 (因操作系统未能提供足够大小的内存)

2014-06-10 21:46 821 查看
问题:你会 在屏幕上看到如下字样

# Native memory allocation (malloc) failed to allocate 1431699456 bytes for committing reserved memory. "

原因很简单: Spark1.0.0构建过程在启动JVM的时候用的参数太大:
-Xms2048m -Xmx2048m。笔者的环境只有1G内存(其实开始是256M, 当时以为是内存确实太小,所以,又花了100多块升级到1G,结果还是不行)

根本原因

在 sbt/sbt-launch-lib.bash

get_mem_opts () {
local mem=${1:-2048}
local perm=$(( $mem / 4 ))
(( $perm > 256 )) || perm=256
(( $perm < 4096 )) || perm=4096
local codecache=$(( $perm / 2 ))

echo "-Xms${mem}m -Xmx${mem}m -XX:MaxPermSize=${perm}m -XX:ReservedCodeCacheSize=${codecache}m"
}


备注: 目前,我还没构建成功。这是在构建过程中遇到的第一个问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: