UltraSPARC T1
UltraSPARC T1是升阳电脑所研发的微处理器,而处理器还在开发阶段时的研发代号称为「Niagara,尼亚加拉瀑布」,之后在2005年11月14日正式研发完成并发表。UltraSPARC T1是一颗多内核(运行核)、多线程(多线程)的CPU,且针对服务器运算的运用需求而强化省电设计,在1.2GHz运作时脉下的典型用电为72W(Watt,瓦、瓦特)。
产品化 | 2005 |
---|---|
设计团队 | Sun Microsystems |
生产商 | |
指令集架构 | SPARC V9 |
内核数量 | 4, 6, 8 |
CPU主频范围 | 1.0 GHz 至 1.4 GHz |
内核代号 |
|
继任产品 | UltraSPARC T2 |
UltraSPARC T1衍生自UltraSPARC系列微处理器,它是升阳电脑公司的第一颗多核多绪处理器,这颗处理器内可以有4个、6个、8个CPU内核,且每个内核最多可同时执掌、处理4个线程,如此UltraSPARC T1处理器在最理想状态下可同时运行32个线程。
UltraSPARC T1的运作与升阳电脑的高端对称处理(SMP)系统很近似,它具有系统分割能力,可以将一个或数个内核切割成一个分区(Partition),然后在分区内运行一个或数个进程(Process)及线程(Thread),此外待运行的进程、线程也可以尽速派送或转移给其他较闲余的运行内核,进而增加整体运行效率。
内核

UltraSPARC T1是针对多绪运行而设计的特殊处理器,它运用新的架构来获取高运行效率,而不是为单一个运行内核加入更多智能化、最优化的心力设计,升阳的目标是在同一时间内尽可能运行、处理多个线程,使每个运行内核的运行管线能达到最大的使用率。
此种作法目前来看似乎成效不错,现有的基准标竿测试证实UltraSPARC T1内的每个运行内核确实更有效率,这是与约2001年的UltraSPARC III相比,UltraSPARC III是一颗单核、单绪,且能完整运行SPARC v9指令集的处理器。
UltraSPARC T1内虽有8个运行内核,但每个运行内核的结构复杂度并不如现有的高端处理器,而且每个运行内核也不具备超序运行(out-of-order execution,简称:OOO,也称乱序运行)的能力,也没有配属大容量的高速缓存。单绪型的处理器极倚赖大容量的高速缓存来提升运行性能,原因是:一旦在高速缓存中抓取不到所需的数据(称为:漏失,miss)时,就必须从主内存中去提取(fetch)数据,而增加高速缓存的容量可减少漏失的几率,不过即便如此,漏失对性能依然是很大的冲击影响。
相对的,UltraSPARC T1的内核是运用多线程的处理特性来避开缓存漏失所造成的性能冲击,当缓存漏失发生时,内核会转去处理另一个线程(在此假设还有其他可放置的待处理位置,每个核最多可执掌4个线程),在处理的同时,原先漏失的的需求数据,也会在这时候以背景作业的方式自外部主内存提取到处理器内。如此虽然每个线程的处理速度会较慢,但每个内核的整体处理进出量及运算利用率反而是大幅提高。而这也意味着缓存漏失的冲击影响被大幅降低,这样UltraSPARC T1就能以较少的内置高速缓存而仍可维持大量的进出处理运行效率,高速缓存的容量不再需要大到得容纳运行内核所需的所有数据或绝大多数的数据,只要能容纳每个线程最近所漏失而必须提取至处理器内的数据。
目标市场
UltraSPARC T1有其独到的功性能力使其能专注、适合在特有的市场,而不是用在高端财务数字运算及超高性能的应用,它是锁定在网络方面的高需求伺服运算上,如高流量的网站服务器,这类的伺服运算会用到大量的线程,且各线程间没有相依性,或者是没有太高的相依性,各绪相当的个别独立。
不过,UltraSPARC T1的设计上也有个局限,那就是整个处理器内仅有1个浮点运算单元,且使用上由8个内核所共享,因此UltraSPARC T1不适合用来运行具有大量浮点运算的应用程序。然而,这颗处理器所想定的互联网服务器应用市场本就不常用到大量的浮点运算 ,升阳电脑方面不认为在这个市场上这将成为一个问题。
- ^ - 附注:文章虽如此翻译,但我持有另一个看法,即是升阳电脑为了及早推出UltraSPARC T1处理器,因此将重要性较次的设计项目加以精省,而浮点运算、加密运算皆在此列,所以UltraSPARC T1仅有8个整数运算内核,但却没有8个浮点数运算内核及8个加密运算内核,反而是只有1个浮点数运算内核与1个加密运算内核,而这些已在后续的新款处理器中得到补足强化。
已经证实这些问题已经在升阳的下一代芯片UltraSPARC T2中得到解决。这款芯片将具有8个核,每个核具有8个硬件线程支持能力(这比UltraSPARC-T1多一倍)。同时,每个内核都具有独立的浮点运算单元。因此,这款芯片的浮点运算能力甚至可用于高性能计算领域(需要大量浮点运算支持)。
同为多内核处理器,Sun的Niagara系列芯片(UltraSPARC T1, T2)与IBM的多内核芯片Cell显着不同。首先,前者是对等结构,各核之间地位对等、没有差异;而后者是主从结构。其次,前者的每个内核均具有完整的SPARC V9指令集支持能力,均可独立执行任何指令,理论上二进制代码可以直接运行;后者只有一个Power内核作为主控,其余内核实质上都是矢量处理单元(VPE),只负责执行SIMD指令,如果要充分发挥其处理能力,应用进程必须以SIMD指令重写。以上不同造成了两款芯片面向不同应用的事实,即前者适合于处理无规则数据流,如网络服务器;后者适合大批量规则运算,如做为游戏机处理芯片。
研发代号:「Rock」
UltraSPARC T1是针对单颗CPU的系统所设计,所以它不具备对称处理(SMP)能力,即由UltraSPARC T1组成的系统,最多只能有一颗多内核芯片。而未来升阳的CMT UltraSPARC处理器,如Rock(研发代号)将会是多颗处理芯片的服务器架构,多颗多内核Rock芯片将能组成对称多处理机(SMP)系统,进一步扩展运算能力。Rock处理器将锁定在传统数据运算工作,如数据库运行。因此,Rock看来将成为升阳电脑在SMP架构处理器上的新接替,预计会取代现有的UltraSPARC III、UltraSPARC IV。
与UltraSPARC T1不同的,Rock重视且强化浮点运算的能力。另外根据升阳电脑的透露,Rock上将具有一种Hardware Scout(硬件侦测,硬件侦察)功能,是以多线程式的硬件线路设计让Rock具有数据预取(prefetching)的能力。
此外,Rock不是用来接替UltraSPARC T1,升阳电脑已公开其UltraSPARC T2(Niagara 2)处理器的计划,Niagara 2将与UltraSPARC T1相同,皆诉求在网络型运算。
UltraSPARC T2
UltraSPARC T2是升阳电脑所研发的 8 内核处理器,每个内核最高可执掌8个线程,即可同时运行64个线程;且每个内核皆会配属到1个浮点运算单元,即是一颗T2处理器内会有8个浮点运算单元。
开放原码
2006年3月21日,升阳电脑将UltraSPARC T1的相关原始代码,以GPL(GNU General Public License)授权的方式加以公开公布,而公开的项目包括:
- UltraSPARC T1在逻辑电路设计上的原始代码(使用Verilog语言)
- 验证套件与电路功效的仿真推演模型
- 指令集的规格(2005年的UltraSPARC架构版本)
- Solaris 10操作系统在推演仿真之用时的系统镜像档(Image)
外部链接
- 在升阳电脑的官方正式网站上,关于UltraSPARC T1处理器的信息
- 升阳电脑发表八核处理器 – 2005年11月14日,作者:Jessica Davis,出处:Electronic News
- OpenSPARC – 升阳电脑的OpenSPARC网站
- UltraSPARC T1 Project home - UltraSPARC T1项目网站