울트라스팍 T1

섬네일|울트라스팍 T1 프로세서
**울트라스팍 T1**(코드네임 "**나이아가라**")은 2005년 썬 마이크로시스템즈가 출시한 멀티스레딩, 멀티 코어CPU이다. 서버의 에너지 소비를 낮추도록 설계된 이 CPU는 일반적으로 1.4&nbsp;GHz에서 72 W의 전력을 사용한다.

T1은 울트라스팍 아키텍처 2005 사양을 준수하며 전체 SPARC V9 명령어 집합을 실행하는 완전히 새로운 SPARC 마이크로프로세서 구현이다. 썬은 이전에 두 개의 멀티 코어 프로세서(울트라스팍 IV 및 IV+)를 생산했지만, 울트라스팍 T1은 멀티 코어와 멀티 스레드를 모두 지원하는 최초의 마이크로프로세서였다. 이 프로세서는 당시 경쟁업체의 범용 프로세서와 달리 T1에 하드웨어 암호화 장치가 내장되어 처음부터 보안이 강화되었다. 이 프로세서는 4, 6 또는 8개의 CPU 코어로 제공되며, 각 코어는 4개의 스레드를 동시에 처리할 수 있다. 따라서 이 프로세서는 최대 32개의 스레드를 동시에 처리할 수 있다.

울트라스팍 T1은 고급 썬 SMP 시스템과 유사한 방식으로 분할될 수 있다. 따라서 여러 코어를 단일 또는 프로세스 및 스레드 그룹을 실행하는 데 분할할 수 있으며, 다른 코어는 시스템의 나머지 프로세스를 처리한다.

## 생산 역사
아파라 웹시스템즈는 스레드 중심의 SPARC 설계를 개척했다. 이 회사는 썬에 인수되었고, 지적 재산은 T1으로 시작하는 CoolThreads 프로세서 라인의 토대가 되었다.

## 코어
[섬네일|울트라스팍 T1 (나이아가라, 8코어)의 [다이샷과 평면도]]
[섬네일|right|울트라스팍 T1의 [파이프라인 (컴퓨팅)|파이프라인]]
울트라스팍 T1은 멀티스레드 특수 목적 프로세서로 처음부터 설계되었으며, 따라서 성능 향상을 위한 완전히 새로운 아키텍처를 도입했다. 각 코어를 최대한 지능적이고 최적화된 상태로 만들려고 노력하기보다는, 썬의 목표는 가능한 한 많은 동시 스레드를 실행하고 각 코어 파이프라인의 활용도를 극대화하는 것이었다. T1 코어는 동일한 다이에 8개의 코어를 장착할 수 있도록 경쟁 프로세서보다 복잡성이 낮다. 이 코어는 비순차적 명령어 처리나 상당한 양의 CPU 캐시를 특징으로 하지 않는다.

단일 스레드 프로세서는 캐시 미스가 주 메모리에서 데이터를 가져오는 동안 대기 시간을 발생시키기 때문에 성능을 위해 대용량 캐시에 크게 의존한다. 캐시를 크게 만들면 캐시 미스 발생 확률이 줄어들지만, 미스의 영향은 여전히 동일하다.

T1 코어는 멀티스레딩을 통해 캐시 미스 문제를 상당 부분 회피한다. 각 코어는 배럴 프로세서로, 사용 가능한 스레드 간에 매 주기마다 전환된다. 캐시 미스와 같은 긴 대기 시간 이벤트가 발생하면, 데이터가 백그라운드에서 캐시로 가져오는 동안 해당 스레드는 회전에서 제외된다. 긴 대기 시간 이벤트가 완료되면, 해당 스레드는 다시 실행 가능한 상태가 된다. 여러 스레드가 파이프라인을 공유하면 각 스레드는 느려질 수 있지만, 각 코어의 전반적인 처리량(및 활용도)은 훨씬 높아진다. 이는 또한 캐시 미스의 영향이 크게 줄어들고, T1이 더 적은 양의 캐시로 높은 처리량을 유지할 수 있음을 의미한다. 캐시는 더 이상 "작업 세트"의 전체 또는 대부분을 보유할 만큼 클 필요가 없으며, 각 스레드의 최근 캐시 미스만 보유하면 된다.

벤치마크는 이러한 접근 방식이 자바 애플리케이션 서버, 전사적 자원 관리(ERP) 애플리케이션 서버, 이메일(예: 로터스 도미노) 서버 및 웹 서버와 같은 상업적(정수형), 멀티스레드 작업 부하에서 매우 잘 작동했음을 보여준다. 이러한 벤치마크는 울트라스팍 T1의 각 코어가 2001년경의 단일 코어, 단일 스레드 울트라스팍 III보다 강력하며, 칩 대 칩 비교에서 멀티스레드 정수형 작업 부하에서 다른 프로세서를 크게 능가한다는 것을 시사한다.

## 물리적 특성
울트라스팍 T1은 2억 7,900만 개의 트랜지스터를 포함하며 면적은 378&nbsp;mm2이다. 텍사스 인스트루먼트(TI)에서 90&nbsp;nm 상보성 금속 산화물 반도체(CMOS) 공정을 사용하여 9단계 구리 인터커넥트로 제작되었다. 각 코어에는 L1 16&nbsp;KB 명령어 캐시와 8&nbsp;KB 데이터 캐시가 있다. L2 캐시는 3&nbsp;MB이며 L3 캐시는 없다.

## 시스템
[right|섬네일|[썬 파이어 T1000 서버]]
T1 프로세서는 썬 및 후지쯔 컴퓨터 시스템즈의 다음 제품에서 찾을 수 있다.
* 썬/후지쯔/후지쯔 지멘스 SPARC 엔터프라이즈 T1000 및 T2000 서버
* 썬 파이어 T1000 및 T2000 서버
* 썬 Netra T2000 서버
* 썬 Netra CP3060 블레이드
* 썬 블레이드 T6300 서버 모듈

## 대상 시장
울트라스팍 T1 마이크로프로세서는 장점과 단점이 독특하여 특정 시장을 대상으로 한다. 고성능 수치 계산 및 초고성능 애플리케이션에 사용하기보다는, 높은 트래픽의 웹 서버와 미들 티어 자바, ERP 및 CRM 애플리케이션 서버와 같이 많은 수의 개별 스레드를 자주 활용하는 네트워크 중심의 고수요 서버를 대상으로 한다. T1 설계의 한계 중 하나는 단일 부동 소수점 장치(FPU)가 8개 코어 모두에서 공유되어 T1이 많은 부동 소수점 수학을 수행하는 애플리케이션에 적합하지 않다는 것이다. 그러나 프로세서의 의도된 시장은 일반적으로 부동 소수점 연산을 많이 사용하지 않기 때문에 썬은 이것이 문제가 될 것으로 예상하지 않았다. 썬은 애플리케이션의 병렬성 수준과 부동 소수점 명령어 사용을 분석하여 T1 또는 T2 플랫폼에 적합한지 판단하는 도구를 제공한다.

웹 및 애플리케이션 티어 처리 외에도 울트라스팍 T1은 사용자 수가 많은 소규모 데이터베이스 애플리케이션에도 매우 적합할 수 있다. 한 고객은 울트라스팍 T1 서버에서 실행되는 MySQL 애플리케이션이 AMD 옵테론 서버보다 13.5배 빠르게 실행되었다는 결과를 발표했다.

## 가상화
T1은 하이퍼 특권 실행 모드를 지원하는 최초의 SPARC 프로세서이다. SPARC 하이퍼바이저는 이 모드에서 실행되며, T1 시스템을 32개의 논리 도메인으로 분할할 수 있으며, 각 도메인에서 운영 체제 인스턴스를 실행할 수 있다.

현재 솔라리스, 리눅스, NetBSD 및 OpenBSD가 지원된다.

## 소프트웨어 라이선스 문제
전통적으로 오라클 데이터베이스와 같은 상용 소프트웨어 제품군은 소프트웨어가 실행되는 프로세서 수에 따라 고객에게 요금을 부과한다. 2006년 초, 오라클은 **프로세서 계수**를 도입하여 라이선스 모델을 변경했다. T1의 프로세서 계수는 0.25이므로 8코어 T2000은 2-CPU 라이선스만 필요하다.

"Oracle 프로세서 코어 계수 표"는 새로운 CPU가 출시됨에 따라 정기적으로 업데이트되었다.

2006년 3분기에 IBM은 VU(Value Unit) 가격 책정 개념을 도입했다. T1의 각 코어는 코어당 기본값인 100 PVU 대신 30 PVU이다(각 T2 코어는 50 PVU, T3는 70 PVU).

## 약점
T1은 8개 코어에서 공유하는 단일 부동 소수점 장치만 제공하여 HPC 환경에서의 사용을 제한했다. 이 약점은 8개의 부동 소수점 장치와 기타 추가 기능을 포함한 후속 울트라스팍 T2 프로세서에서 완화되었다.

또한 T1은 단일 프로세서 시스템에서만 사용할 수 있어 대기업 환경에서 수직 확장성을 제한했다. 이 약점은 후속 울트라스팍 T2 플러스뿐만 아니라 차세대 SPARC T3 및 SPARC T4에서 완화되었다. 울트라스팍 T2+, SPARC T3 및 SPARC T4는 모두 단일, 이중 및 쿼드 소켓 구성을 제공한다.

T1은 프로세서가 지원하는 엄청난 수의 스레드로 뛰어난 처리량을 자랑했지만, 단일 스레드 병목 현상에 시달리는 오래된 애플리케이션은 때때로 전반적으로 낮은 성능을 보였다. 단일 스레드 애플리케이션의 약점은 후속 SPARC T4 프로세서에서 완화되었다. T4 코어 수는 8개로 줄어들었고(T3의 16개에서), 코어는 더 복잡해졌고, 클럭 속도는 거의 두 배로 빨라졌다. 이 모든 것이 더 빠른 단일 스레드 성능(이전 세대에 비해 300%~500% 증가)에 기여했다. 운영 체제가 병목 현상을 감지하고 단일 스레드 CPU 바인딩 동작을 보이는 대상 애플리케이션 프로세스에 1(8개 중) 스레드 대신 전체 코어 리소스를 일시적으로 할당하는 "임계 스레드 API"를 추가하기 위해 추가적인 노력이 이루어졌다. 이를 통해 T4는 대규모 멀티스레드 처리량을 달성하기 위해 전체 아키텍처를 손상시키지 않고 단일 스레드 병목 현상을 고유하게 완화할 수 있었다.

## 오픈 디자인

2006년 3월 21일, 썬은 오픈스팍 프로젝트를 통해 GNU 일반 공중 사용 허가서로 울트라스팍 T1 프로세서 설계를 공개했다. 공개된 정보는 다음과 같다.
* 울트라스팍 T1 설계의 베릴로그 소스 코드;
* 검증 스위트 및 시뮬레이션 모델;
* ISA 사양(울트라스팍 아키텍처 2005);
* 솔라리스 10 OS 시뮬레이션 이미지.

## 현대 및 후속 설계
울트라스팍 T1으로 시작된 "Coolthreads(TM)" 아키텍처는 (긍정적인 측면과 부정적인 측면 모두에서) SPARC 프로세서의 동시 및 미래 설계에 확실히 영향을 미쳤다.

### "록"

오리지널 울트라스팍 T1은 단일 CPU 시스템 전용으로 설계되었으며 SMP를 지원할 수 없다. "록"은 데이터베이스와 같은 전통적인 데이터 중심 작업 부하를 대상으로 하는 멀티 칩 서버 아키텍처를 지원하기 위한 더욱 야심찬 프로젝트였다. 이것은 울트라스팍 T1 또는 T2의 대체품이라기보다는 울트라스팍 IV와 같은 썬의 SMP 프로세서의 후속작으로 여겨졌지만, 오라클의 썬 인수 시점에 취소되었다.

### 울트라스팍 T2

이전 코드네임 나이아가라 2로 알려진 울트라스팍 T1의 후속작인 T2는 8개의 코어를 제공한다. T1과 달리 각 코어는 코어당 8개의 스레드, 코어당 1개의 FPU, 코어당 1개의 향상된 암호화 장치, 그리고 CPU 내장 10 기가비트 이더넷 네트워크 컨트롤러를 지원한다.

### 울트라스팍 T2 플러스

2007년 2월, 썬은 연례 분석가 정상회의에서 코드네임 빅토리아 폭포로 불리는 3세대 동시 멀티스레딩 설계가 2006년 10월에 테이프 아웃되었다고 발표했다. 2소켓 서버(2 랙 유닛)는 128개의 스레드, 16개의 코어, 그리고 울트라스팍 III에 비해 65배의 성능 향상을 보일 것이다.

핫 칩스 19 컨퍼런스에서 썬은 빅토리아 폭포가 2방향 및 4방향 서버에 사용될 것이라고 발표했다. 따라서 단일 4방향 SMP 서버는 256개의 동시 하드웨어 스레드를 지원할 것이다.

2008년 4월, 썬은 2방향 울트라스팍 T2 플러스 서버인 SPARC 엔터프라이즈 T5140 및 T5240을 출시했다.

2008년 10월, 썬은 4방향 울트라스팍 T2 플러스 SPARC 엔터프라이즈 T5440 서버를 출시했다.

### SPARC T3

2006년 10월, 썬은 나이아가라 3가 45nm 공정으로 제작될 것이라고 밝혔다. 더 레지스터는 2008년 6월, 이 마이크로프로세서가 16개의 코어를 가질 것이라고 보도했으며, 각 코어가 16개의 스레드를 가질 것이라고 잘못 암시했다. 핫 칩스 21 컨퍼런스에서 썬은 이 칩이 총 16개의 코어와 128개의 스레드를 가지고 있다고 밝혔다. ISSCC 2010 발표에 따르면:

"16코어 SPARC SoC 프로세서는 4방향 글루리스 시스템에서 최대 512개의 스레드를 가능하게 하여
처리량을 극대화한다. 461GB/s의 6MB L2 캐시와 2.4Tb/s의 308핀 SerDes I/O는
필요한 대역폭을 지원한다. 6개의 클록 및 4개의 전압 도메인, 그리고 전력
관리 및 회로 기술은 377mm2 다이 전체에서 성능, 전력, 가변성 및 수율 트레이드오프를 최적화한다."


### SPARC T4

T4 CPU는 2011년 후반에 출시되었다. 새로운 T4 CPU는 16개의 코어(T3)에서 8개의 코어(T1, T2, T2+에서 사용된 것과 동일)로 줄어들었다. 새로운 T4 코어 설계("S3"라고 명명)는 비순차적 명령어 처리의 도입으로 스레드당 성능이 향상되었으며, 단일 스레드 프로그램의 성능도 추가적으로 향상되었다.

2010년, 래리 엘리슨은 오라클이 울트라스팍 플랫폼에 오라클 리눅스를 제공할 것이며, 포트는 T4 및 T5 시기에 제공될 예정이라고 발표했다.

오라클 시스템 부문 수석 부사장인 존 파울러는 2014년 오픈월드에서 리눅스가 언젠가 스팍에서 실행될 수 있을 것이라고 말했다.

### SPARC T5

새로운 T5 CPU는 16개의 코어에 128개의 스레드를 특징으로 하며 28나노미터 기술로 제조된다.

## 각주

## 외부 링크
* OpenSPARC T1 및 사양
* OpenSPARC 개요
* Sun의 대대적인 약진 by 린다 겝퍼트, IEEE Spectrum, 2005년 1월
* 나이아가라, 32방향 멀티스레드 SPARC 프로세서 by 푸나차 콩게티라, 카티르가마르 아잉가란, 쿤레 올루코툰, IEEE Micro, 2005년 3월–4월

분류:64비트 마이크로프로세서