High Performance Computing
Posts tagged x86
[SSC]CPU架构及指令集之研究(下)
Aug 6th
上一篇介绍了x86以及其上的相关指令集,如i38,i586等。也提及了IA-64,x64等,这篇文章主要介绍一下64位CPU的一些相关内容。(资料来源:Google,百度)
第二部分:x86,x86-64,IA-64
x86:从1978年来的8086处理器开始,就已经出现了x86架构CPU,即32位处理器。(详见上篇)
x86-64:又简称为x64,最初开发为1999年AMD,也叫做AMD64或x64,为了扩充IA64。当时的x86-64架构诞生颇有时代意义,处理器的发展遇到了瓶颈,内存寻址空间由于受到32位CPU的限制而只能最大到约4G。于是就有了x86-64。后被Intel所采用。
IA-64:其实IA-64的历史早于x86-64x,最初由Intel和惠普联合推出。由于IA-64不与32位兼容,所以没有受到重视。直到Intel采用了AMD的x86-64架构,才正式的批量生产。而后为了日益扩张的计算需求,Intel重新将IA-64拿出来,发布了安腾系列服务器CPU。
虽然x86-64和IA-64处理器都能够运行64位操作系统和应用程序,但是区别在于:
- x86-64架构基于x86,是为了让x86架构CPU兼容64位计算而产生的技术。X86-64架构的设计是采用直接简单的方法将目前的x86指令集扩展。这个方法与当初的由16位扩展至32位的情形很相似。优点在于用户可以自行选择x86平台或x64平台,兼容性高。
- IA-64则是原生的纯64位计算处理器,并且与x86指令不兼容。如果想要执行x86指令需要硬件虚拟化支持,而且效率不高。优点在于 IA-64架构体系将拥有64位内存寻址能力,能够支持更大的内存寻址空间。并且由于架构的改变,性能比起x86-64的64位兼容模式更高更强。
所以,IA-64操作系统也是比较少见的,由于只能在Intel安腾系列处理器及AMD部分服务器处理器运行,所以主流市场并不常见。而且,这些IA-64架构处理器也不能够使用x64操作系统。而x86-64处理器则可以自由选择x86或是x64操作系统。
[SSC]CPU架构及指令集之研究(上)
Aug 5th
这几天一直在搞BLCR,自然对内核接触的也比较多。不仅在OS版本上的不同,如Ubuntu、Fedora、Suse,还有芯片结构,指令集的不同,从AMD到Intel,从32位到64位。这种水平和垂直方向的跨度,也让我有了更全面的认识。研究内核,自然会涉及不同的架构,不同的指令集。通过两篇文章,简单但又综合性的介绍一下相关概念。(资料来源:Google,百度)
第一部分:x86与i386、i486、i586、i686
- x86
x86,或80×86是Intel首先开发制造的一种微处理器体系结构的泛称,包括8086、80186、80286、80386以及80486等。 因此其架构被称为“x86”。由于数字并不能作为注册商标,现在Intel把x86-32称为IA-32,即Intel Architecture, 32-bit。
x86架构于1978年推出的Intel 8086中央处理器中首度出现,它是从Intel 8008处理器中发展而来的,而8008则是发展自Intel 4004的。之后x86便成为了个人计算机的标准平台,成为了历来最成功的CPU架构。Intel以外最成功的制造商为AMD,其Athlon系列处理器的市场仅次于Pentium。
8086是16位处理器,直到1985年32位的80386的开发,这个架构都维持是16位。接着一系列的处理器表示了32位架构的细微改进,推出了数种的扩充,直到2003年AMD对于这个架构发展了64位的扩充,并命名为AMD64(有时也被称作x86-64,x64或EM64T),推出了 Opteron处理器家族,开创了x86的64位时代。
值得注意的是Intel早在1990年代就与惠普合作提出了一种用在安腾(Itanium)系列处理器中的独立的64位架构,这种架构被称为IA-64。IA-64是一种崭新的系统,和x86架构完全没有相似性,不应该把它与AMD64或x86-64弄混。关于x86-64,IA-64,AMD64等,将在下一篇文章中介绍。
x86是一个Intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合,X与处理器没有任何关 系,它是一个对所有*86系统的简单的通配符定义,例如:i386, 586,奔腾(Pentium)。
由于早期Intel的CPU编号都是用如8086,80286来编号,这整个系列的CPU都是指令兼容的,所以都用x86来标识所使用的指令集合。如今的奔腾、P2、P4、赛扬系列都是支持x86指令系统的,所以都属于x86家族。目前,也并不都是使用x86系列CPU,部分服务器和苹果 (Macintosh)机中还使用美国DIGITAL(数字)公司的Alpha 61164和PowerPC 604e系列CPU。
More >
Fixstars Releases Beta of ‘FOXC’ OpenCL Compiler for x86
Jan 14th
As http://www.hpcwire.com reported on December 16 2009, Fixstars Corporation announced the release of the beta version of its OpenCL Compiler "FOXC" for the x86 architecture starting today. This will allow software developers to take full advantage of multicore x86 CPUs to develop OpenCL-based softwares. The "FOXC" Beta version can be downloaded for free from its Web site.
OpenCL is a parallel computing framework for programming multicore systems, such as multicore CPUs, GPUs, Cell/B.E., DSPs. The framework, which is a product of joint effort by the world’s leading semiconductor makers and hardware vendor, is attracting attention as an efficient and highly portable open technology for software development.
Recent Comments