JAVA JDK 缺省堆栈大小

内容来源:https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/parallel.html#default_heap_size

默认堆大小
除非在命令行中指定了初始和最大堆大小,否则它们是根据机器上的内存量计算的。

客户端 JVM 默认初始和最大堆大小
默认的最大堆大小是物理内存的一半,最大为 192 兆字节 (MB) 的物理内存大小,否则为物理内存的四分之一,最大为 1 吉字节 (GB) 的物理内存大小。

例如,如果您的计算机有 128 MB 的物理内存,则最大堆大小为 64 MB,大于或等于 1 GB 的物理内存导致最大堆大小为 256 MB。

JVM 不会实际使用最大堆大小,除非您的程序创建了足够多的对象来要求它。在 JVM 初始化期间分配的数量要小得多,称为初始堆大小。此数量至少为 8 MB,否则为物理内存的 1/64,最大为 1 GB 的物理内存大小。

分配给年轻代的最大空间量是总堆大小的三分之一。

服务器 JVM 默认初始和最大堆大小
默认初始和最大堆大小在服务器 JVM 上的工作方式与在客户端 JVM 上的工作方式类似,只是默认值可以更高。在 32 位 JVM 上,如果有 4 GB 或更多的物理内存,则默认的最大堆大小可以高达 1 GB。在 64 位 JVM 上,如果有 128 GB 或更多的物理内存,则默认的最大堆大小可以高达 32 GB。你总是可以通过直接指定这些值来设置更高或更低的初始和最大堆;请参阅下一节。

指定初始和最大堆大小
您可以使用标志**-Xms(初始堆大小)和-Xmx(最大堆大小)指定初始和最大堆大小**。如果您知道您的应用程序需要多少堆才能正常工作,您可以将-Xms和设置-Xmx为相同的值。如果不是,JVM 将首先使用初始堆大小,然后增大 Java 堆,直到找到堆使用和性能之间的平衡。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ྒߌྐ༏॓࠯čഈݚĎႵཋ܄ඳ Transwarp Inceptor ࠯ඌϢ௃඀ 2014 TRANSWARP 星环科技 Hadoop由HDFS和Map/Reduce组成。HDFS仍然是一个高可扩展的分布式文件系统,是大数据软件栈的基 石。Map/Reduce在处理PB级别的数据时,仍然具有高容错性、高吞吐量的特点。但由于复杂的工作流通常需 要多个阶段的Map/Reduce任务,而Map/Reduce的输入输出必须经过低速磁盘,导致运行复杂迭代任务时非常 低效,因此不适合对延时要求高的交互式分析或者需要复杂迭代的数据分析任务。而Spark是一个基于内存计算 的开源集群计算系统,目的是更快速地进行数据分析。 Spark 提供了与Hadoop Map/Reduce 相似的分布式计 算框架,但却有基于内存和迭代优化的设计,因此在交互式数据分析和数据挖掘工作负载中表现更优秀。 随着对大数据技术研究的深入,Spark开源生态系统得到了快速发展,已成为大数据领域最活跃的开源项目 之一。Spark之所以吸引如此多的关注,究其原因主要是因为Spark具有以下三方面特征: 虽然Spark具有以上三大优点,但从目前Spark的发展和应用现状来看,Spark自身也存在很多陷,主要 包括以下几个方面: 因此,尽管Spark正活跃在众多大数据公司的技术体系中,但是如果Spark本身的这些陷得不到及时处理, 将会严重影响Spark的普及和发展。星环科技有针对性的开发,推出了一系列关于Spark的大数据平台技术方案, 这些难题便迎刃而解。 星环科技推出的基于Spark的交互式分析引擎Inceptor,从下往上分三层架构,最底层是分布式缓存( Transwarp Holodesk),可建在内存或者SSD上;中间层是Apache Spark计算引擎层;最上层包括SQL 2003 和PL/SQL编译器、统计算法库和机器学习算法库,提供完整的R语言访问接口。 高性能:Spark对分布的数据集进行抽象,创新地提出RDD(Resilient Distributed Dataset)的概念,所有的统 计分析任务被翻译成对RDD的若干基本操作组成的有向无环图(DAG)。RDD可以被驻留在内存中,后续的任 务可以直接读取内存中的数据;同时分析DAG中任务之间的依赖性可以把相邻的任务合并,从而减少了大量 的中间结果输出,极大减少了磁盘I/O,使得复杂数据分析任务更高效。从这个意义上来说,如果任务够复杂, 迭代次数够多,Spark比Map/Reduce快一到两个数量级。 高灵活性:Spark是一个灵活的计算框架,适合做批处理、工作流、交互式分析、迭代式机器学习、流处理等 不同类型的应用,因此Spark可以成为一个用途广泛的计算引擎,并在未来取代Map/Reduce的地位。 与Hadoop生态完美融合:Spark可以与Hadoop生态系统的很多组件互操作。Spark可以运行在新一代资源管 理框架YARN上,它还可以读取已有的存放在Hadoop上的数据,这是个非常大的优势。 稳定性:由于代码质量问题,Spark长时间运行会经常出错,在架构方面,由于大量数据被缓存在内存中, Java垃圾回收缓慢的现象严重,导致Spark的性能不稳定,在复杂场景SQL的性能甚至不如现有Map/Reduce。 不能处理大数据:单台机器处理数据过大,或者由于数据倾斜导致中间结果超过内存大小时,常常出现内存 不够或者无法运行得出结果。但是Map/Reduce计算框架却可以处理大数据,因此在这方面Spark不如Map/Reduce 有效。 不支持复杂的SQL统计:目前Spark支持的SQL语法的完整程度还不能应用在复杂数据分析中。在可管理性 方面,Spark与YARN的结合不完善,这就在用户使用过程中埋下隐患,易出现各种难题。 基于Spark的交互式分析引擎 技术解析 基于Spark的交互式分析引擎技术解析 2014 TRANSWARP 星环科技 Transwarp Inceptor对Spark进行了大量的改进,具有高性能、稳定性好、功能丰富、易管理等特征,可以 切实解决Spark本身存在的难题。具体而言,星环Inceptor具有以下几点优势: 高性能 首先,支持高性能Apache Spark作为执行引擎,可比原生的Hadoop Map/Reduce快;其次,通过建立 独立于Spark的分布式列式缓存层,可以有效防止GC的影响,消除Spark的性能波动,同时在列式缓存上实现 索引机制,进一步提高了执行性能;再次,在SQL执行计划优化方面,实现了基于代价的优化器(cost based optimizer)以及多种优化策略,性能可以比原生Spark快数倍;最后通过全新的方法解决数据倾斜或者数据量过 大的问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值