- 浏览: 3049435 次
- 性别:
- 来自: 海外
文章分类
- 全部博客 (430)
- Programming Languages (23)
- Compiler (20)
- Virtual Machine (57)
- Garbage Collection (4)
- HotSpot VM (26)
- Mono (2)
- SSCLI Rotor (1)
- Harmony (0)
- DLR (19)
- Ruby (28)
- C# (38)
- F# (3)
- Haskell (0)
- Scheme (1)
- Regular Expression (5)
- Python (4)
- ECMAScript (2)
- JavaScript (18)
- ActionScript (7)
- Squirrel (2)
- C (6)
- C++ (10)
- D (2)
- .NET (13)
- Java (86)
- Scala (1)
- Groovy (3)
- Optimization (6)
- Data Structure and Algorithm (3)
- Books (4)
- WPF (1)
- Game Engines (7)
- 吉里吉里 (12)
- UML (1)
- Reverse Engineering (11)
- NSIS (4)
- Utilities (3)
- Design Patterns (1)
- Visual Studio (9)
- Windows 7 (3)
- x86 Assembler (1)
- Android (2)
- School Assignment / Test (6)
- Anti-virus (1)
- REST (1)
- Profiling (1)
- misc (39)
- NetOA (12)
- rant (6)
- anime (5)
- Links (12)
- CLR (7)
- GC (1)
- OpenJDK (2)
- JVM (4)
- KVM (0)
- Rhino (1)
- LINQ (2)
- JScript (0)
- Nashorn (0)
- Dalvik (1)
- DTrace (0)
- LLVM (0)
- MSIL (0)
最新评论
-
mldxs:
虽然很多还是看不懂,写的很好!
虚拟机随谈(一):解释器,树遍历解释器,基于栈与基于寄存器,大杂烩 -
HanyuKing:
Java的多维数组 -
funnyone:
Java 8的default method与method resolution -
ljs_nogard:
Xamarin workbook - .Net Core 中不 ...
LINQ的恶搞…… -
txm119161336:
allocatestlye1 顺序为 // Fields o ...
最近做的两次Java/JVM分享的概要
暂时就放个gist链接出来:>> https://gist.github.com/827140 <<
多数参数的意义在这里可以查到:globals.hpp
Windows测试环境:
Linux x64测试环境:
====================================================================
一些参数的备注:
PrintClassHistogramBeforeFullGC (>= 6u18)
UseFPUForSpilling在支持SSE2或异常的系统上默认仍然是false的,但打开AggressiveOpts则会变为true
UseOprofile 留意一下这个参数,默认是false
MaxTenuringThreshold在使用CMS时的默认值会变成4
====================================================================
参数相关讨论:
JVM调优的"标准参数"的各种陷阱
“测”么…方法写在第一行(给的链接里)了。
这帖的本体是在Gist上的啊
懒得把内容贴过来因为相对Gist贴代码型文本更方便些。
多数参数的意义在这里可以查到:globals.hpp
Windows测试环境:
OS: Windows XP Build 2600 Service Pack 3 CPU:total 2 (2 cores per cpu, 1 threads per core) family 6 model 23 stepping 10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1 Memory: 4k page, physical 3405352k(2067228k free), swap 5334424k(3848208k free) vm_info: Java HotSpot(TM) Client VM (19.0-b09) for windows-x86 JRE (1.6.0_23-b05), built on Nov 12 2010 15:00:43 by "java_re" with MS VC++ 7.1 (VS2003)
OS: Windows XP Build 2600 Service Pack 3 CPU:total 2 (2 cores per cpu, 1 threads per core) family 6 model 23 stepping 10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1 Memory: 4k page, physical 3405352k(2043728k free), swap 5334424k(3801564k free) vm_info: Java HotSpot(TM) Server VM (19.0-b09) for windows-x86 JRE (1.6.0_23-b05), built on Nov 12 2010 14:54:05 by "java_re" with MS VC++ 7.1 (VS2003)
Linux x64测试环境:
OS:Red Hat Enterprise Linux Server release 5.4 (Tikanga) uname:Linux 2.6.18-164.el5xen #1 SMP Tue Aug 18 15:59:52 EDT 2009 x86_64 libc:glibc 2.5 NPTL 2.5 rlimit: STACK 10240k, CORE 0k, NPROC 28064, NOFILE 1024, AS infinity load average:0.04 0.02 0.00 /proc/meminfo: MemTotal: 3584000 kB MemFree: 1742760 kB Buffers: 342260 kB Cached: 1122924 kB SwapCached: 2076 kB Active: 694568 kB Inactive: 905416 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 3584000 kB LowFree: 1742760 kB SwapTotal: 1052248 kB SwapFree: 1045628 kB Dirty: 20 kB Writeback: 0 kB AnonPages: 133980 kB Mapped: 17656 kB Slab: 144916 kB PageTables: 2540 kB NFS_Unstable: 0 kB Bounce: 0 kB CommitLimit: 2844248 kB Committed_AS: 268736 kB VmallocTotal: 34359738367 kB VmallocUsed: 700 kB VmallocChunk: 34359737667 kB CPU:total 4 (4 cores per cpu, 1 threads per core) family 6 model 15 stepping 11, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3 /proc/cpuinfo: processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 15 model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz stepping : 11 cpu MHz : 1861.913 cache size : 4096 KB physical id : 0 siblings : 1 core id : 0 cpu cores : 1 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu de tsc msr pae cx8 apic sep cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc pni cx16 lahf_lm bogomips : 4656.41 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 15 model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz stepping : 11 cpu MHz : 1861.913 cache size : 4096 KB physical id : 1 siblings : 1 core id : 0 cpu cores : 1 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu de tsc msr pae cx8 apic sep cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc pni cx16 lahf_lm bogomips : 4656.41 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 2 vendor_id : GenuineIntel cpu family : 6 model : 15 model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz stepping : 11 cpu MHz : 1861.913 cache size : 4096 KB physical id : 2 siblings : 1 core id : 0 cpu cores : 1 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu de tsc msr pae cx8 apic sep cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc pni cx16 lahf_lm bogomips : 4656.41 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: processor : 3 vendor_id : GenuineIntel cpu family : 6 model : 15 model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz stepping : 11 cpu MHz : 1861.913 cache size : 4096 KB physical id : 3 siblings : 1 core id : 0 cpu cores : 1 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu de tsc msr pae cx8 apic sep cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc pni cx16 lahf_lm bogomips : 4656.41 clflush size : 64 cache_alignment : 64 address sizes : 38 bits physical, 48 bits virtual power management: Memory: 4k page, physical 3584000k(1742760k free), swap 1052248k(1045628k free) vm_info: Java HotSpot(TM) 64-Bit Server VM (20.0-b08) for linux-amd64 JRE (1.6.0_25-ea-b01), built on Jan 27 2011 13:11:34 by "java_re" with gcc 3.2.2 (SuSE Linux)
====================================================================
一些参数的备注:
PrintClassHistogramBeforeFullGC (>= 6u18)
UseFPUForSpilling在支持SSE2或异常的系统上默认仍然是false的,但打开AggressiveOpts则会变为true
UseOprofile 留意一下这个参数,默认是false
MaxTenuringThreshold在使用CMS时的默认值会变成4
====================================================================
参数相关讨论:
JVM调优的"标准参数"的各种陷阱
评论
3 楼
zhdkn
2012-05-21
两个连接把默认参数介绍的一目了然,赞一个 。
请教一个问题,open JDK 的 HotSpot vm和标准的jdk的HotSpot vm有什么区别,还是说两者是一个东西
请教一个问题,open JDK 的 HotSpot vm和标准的jdk的HotSpot vm有什么区别,还是说两者是一个东西
2 楼
RednaxelaFX
2011-04-09
xgj1988 写道
不知你用什么测的?
“测”么…方法写在第一行(给的链接里)了。
这帖的本体是在Gist上的啊
懒得把内容贴过来因为相对Gist贴代码型文本更方便些。
1 楼
xgj1988
2011-04-08
不知你用什么测的?
发表评论
-
The Prehistory of Java, HotSpot and Train
2014-06-02 08:18 0http://cs.gmu.edu/cne/itcore/vi ... -
MSJVM and Sun 1.0.x/1.1.x
2014-05-20 18:50 0当年的survey paper: http://www.sym ... -
Sun JDK1.4.2_28有TieredCompilation
2014-05-12 08:48 0原来以前Sun的JDK 1.4.2 update 28就已经有 ... -
IBM JVM notes (2014 ver)
2014-05-11 07:16 0Sovereign JIT http://publib.bou ... -
class data sharing by Apple
2014-03-28 05:17 0class data sharing is implement ... -
Java 8与静态工具类
2014-03-19 08:43 16278以前要在Java里实现所谓“静态工具类”(static uti ... -
Java 8的default method与method resolution
2014-03-19 02:23 10453先看看下面这个代码例子, interface IFoo { ... -
HotSpot Server VM与Server Class Machine
2014-02-18 13:21 0HotSpot VM历来有Client VM与Server V ... -
Java 8的lambda表达式在OpenJDK8中的实现
2014-02-04 12:08 0三月份JDK8就要发布首发了,现在JDK8 release c ... -
GC stack map与deopt stack map的异同
2014-01-08 09:56 0两者之间不并存在包含关系。它们有交集,但也各自有特别的地方。 ... -
HotSpot Server Compiler与data-flow analysis
2014-01-07 17:41 0http://en.wikipedia.org/wiki/Da ... -
字符串的一般封装方式的内存布局 (1): 元数据与字符串内容,整体还是分离?
2013-11-07 17:44 22396(Disclaimer:未经许可请 ... -
字符串的一般封装方式的内存布局
2013-11-01 12:55 0(Disclaimer:未经许可请 ... -
关于string,内存布局,C++ std::string,CoW
2013-10-30 20:45 0(Disclaimer:未经许可请 ... -
对C语义的for循环的基本代码生成模式
2013-10-19 23:12 21874之前有同学在做龙书(第二版)题目,做到8.4的练习,跟我对答案 ... -
Java的instanceof是如何实现的
2013-09-22 16:57 0Java语言规范,Java SE 7版 http://docs ... -
oop、klass、handle的关系
2013-07-30 17:34 0oopDesc及其子类的实例 oop : oopDesc* ... -
Nashorn各种笔记
2013-07-15 17:03 0http://bits.netbeans.org/netbea ... -
《深入理解Java虚拟机(第二版)》书评
2013-07-08 19:19 0值得推荐的中文Java虚拟机入门书 感谢作者赠与的样书,以下 ... -
豆列:从表到里学习JVM实现
2013-06-13 14:13 48368刚写了个学习JVM用的豆列跟大家分享。 豆列地址:http: ...
相关推荐
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode) ``` **Maven的安装与配置** Maven是一个流行的Java项目管理工具,它负责构建、依赖管理和项目信息管理。可以从Maven官方网站下载最新版本的...
- JDK 8前,HotSpot VM的方法区实现为永久代(PermGen)。 - 从JDK 7开始,字符串常量池和静态变量移到堆,JDK 8彻底移除永久代,引入元空间(Metaspace),存储类元数据,直接使用本地内存。 5. **运行时内存...
- 在JDK 8之前,HotSpot VM的方法区是永久代(PermGen),存储字符串常量池、静态变量等。从JDK 7开始,这部分内容逐渐移到堆,JDK 8彻底移除永久代,用元空间替代,元空间直接在本地内存分配。 5. **JVM运行时...
- **HotSpot VM** 是Oracle JDK中的JVM实现,包含了C1和C2两种JIT编译器。 学习JVM规范有助于开发者更好地理解Java程序的运行机制,从而编写出更高效、更稳定的代码。通过调整JVM参数、优化内存管理和理解垃圾回收...
一个微服务框架,为高效的大数据处理提供异构计算环境。 文档 参考文档位于 。 构建笔记 CLARA 需要 Java 8 JDK。 Ubuntu 支持 PPA: $ sudo apt-get install software-properties-common 从以下位置安装 Oracle ...
4. 选择远程机器的 Java 运行环境,例如 sun\1.5.0\hotspot。 5. 选择监控端口,例如 8849。 6. 等待远程计算机上的 jprofiler GUI 启动,并和本机建立连接。 监控结果 jprofiler 的监控结果可以通过 VM Telemetry...
2. **JVM配置文件**:如果你的应用使用了服务器模式的JVM(如Oracle HotSpot的Server VM),可以修改`jvm.config`文件,添加`-Xss`选项。这种方法适用于需要持久设置堆栈大小的情况,例如在生产环境中。 调整堆栈...
- **HotSpot VM**:包含解释器和JIT编译器,对热点代码进行编译,提高执行效率。 - **分层编译**:从C1到C2,逐步提高优化级别。 以上只是JVM面试中可能会遇到的一部分知识点,实际面试中可能还会涉及到更多细节...