Intel EM64T 技术与 Oracle

| 10 Comments

最近尝试了一下在 Dell PowerEdge 6850 上部署 EM64T 版本的 Oracle。 Intel 的 EM64T 技术不是真正的 64 位技术,但也可以体验一些 64 位的特性。

Intel EM64T 就是 Extended Memory 64 Technology,也有误缩写做 EMT64 的,通过 EM64T 可以实现 40 位的物理内存寻址与 48 位的虚拟内存寻址。真正的 64 位技术能够实现 50 位的物理地址寻址与 64 位虚拟地址寻址。

对于 Oracle RDBMS 来说,一个显著的变化是能够使用超过 1.7G 的内存边界,SGA 可以默认支持使用 4G 的内存(实际 3.7G 左右)。数据库 Cache 可以设置大一点,这样内存使用效率会好一些。Dell 很多 PC 服务器现在都支持 EM64T , 有不少被用来跑 Oracle 数据库,据我了解,实际使用 EM64T 的用户非常少。PowerEdge 6950 是 AMD 64bit CPU,用户群好像还没有积累起来。

现在 EM64T 已经叫做 Intel64 Architecture 了。

两个参考文档:

Dell 网站的评测报告
Running Oracle on 10g on Windows Server 2003 x64 Editions

--EOF--

10 Comments

EM64T, 确实有时感觉概念比较乱,在上面安装linux, oracle,不知道是否还是安装原来的32位,还是要装64位的版本,是否64位的,能有性能的提示。

Oracle 10g 有针对 EM64T 的版本(x86_64)

“现在 EM64T 已经叫做 Intel64 Architecture 了”,很容易让人误解啊。

64位主要分为1、IA64架构的(也就是英特尔的安腾)和2、AMD64/EMT64的(AMD64处理器和英特尔新的至强处理器),分别对应ORACLE的IA64(安腾)和X86_64安装介质。

其实 HP/IBM 的主机芯片也都是有区别的

我们的DELL6850服务器,从/proc/cpuinfo中看到的如下:address sizes : 40 bits physical, 48 bits virtual,那也就是说这也不是真正的64位的机器了?可是我们一直是上面直接装64位的REDHAT 4U4,然后装ORACLE X86_64的版本的,不是EM64T的,16GB的内存,SGA直接设置为8GB的,运行一直稳定,跟老兄文章中提到的好像有点出入啊

如果 Dell 6850 ,那么肯定是 Intel CPU , 如果是 64 位 Oracle ,那么肯定是 EM64T 下的,你去 OTN 上看看 Oracle 的版本!

http://www.oracle.com/technology/software/products/database/index.html
前面你的回复中写到ORACLE有专门的EM64T的版本的,可是我从这个链接看到的LINUX下的版本只有32位的、64位FOR X86的、安腾的、POWER的,没有找到这个版本呢?
而且,我安装的就是X86_64的版本的,和你提到EM64T有什么区别和联系呢?

EM64T 是针对 OS 的 CPU 机制说的,如果 OS 安装了 EM64T 的版本,那么对于应用软件来说,32 位/64 位都是兼容的。

针对 EM64T 的版本说法有问题,应该是 OS :

http://www.redhat.com/docs/manuals/enterprise/RHEL-3-Manual/release-notes/as-amd64/RELEASE-NOTES-U2-x86_64-en.html

了解了,感谢这么仔细的回复

AMD所谓的64位CPU也不是完全的64位。