이번에도 한참 늦은 정보지만, 흥미로와 올려본다.
cell.scei.co.jp에서는 CBE(Cell Broadband Engine™)에 대한 자료를 공개하고 있는데,
게임기 외에 다른 용도를 쓰이길 원하는 Open Architecture라서 Cell 칩의 구동원리에 대한
구체적인 자료들이 많다. (일어 영어 문서 지원)
Cell Broadband Engine™ Architure
사이트를 살펴보다가, CBE(Cell Broadband Engine™) Architure ver. 1.00 문서의
CBEA-Compliant Processor(CBEA규약에 적합한 프로세서)를 정의하는 부분이 눈에 띄었는데,
여기보면 참으로 광대한 상상화가 등장한다.
이걸 보면 '향후 10년동안 나올 프로세서는 이정도 범위 안에서 소화되겠지'라고 예상하고 그려둔
Hyper-tech document 가 아닌가라는 생각이 든다. 왜 인지는 PS3에 쓰인 최초 Cell Chip의
구조를 보면 알게된다.
PS3 Cell Chip의 구조
PS3는 7개의 SPE를, 그리고 차후에 발표될 Consumer Electronics는 6개의 SPE를 가질 예정이라고 한다. 이 칩을 위의 그림대로 분류해보자면,
- 1개의 SG(SPE Group) with 8 SPEs
- 1개의 PG(PPE Group) with 1 PPU
SPE Group이 몇개인가는 Chip Specification에 나와있질 않아서 모르겠지만, IBM에서 정리한
SPE group의 정의를 보면,
– a collection of SPE threads that share scheduling attributes
– there is a default group with default attributes
– each SPE thread belongs to exactly one SPE group
때문에, PS3에 쓰일 Chip은 1개의 그룹일 가능성이 높다.
(아니라면 개개의 Thread에 대한 관리를 PPE에서 매개전달해야 함)
PS3 Chip의 철학
그렇다면, 왜 PS3의 Chip에는 복수개의 PPE가 아닌 복수개의 SPE가 들어갔을까?
이 부분은 PS3가 지향하는 목표가 "가정용 종합 엔터테인먼트"라는 것을 생각하면 알 수 있다.
가정에서 일어나는 대부분의 멀티미디어(게임포함) 행위는 스트리밍의 형태로 이해할 수 있다.
3D게임의 방대한 폴리곤, 텍스쳐의 스트리밍, 물리엔진에 연산되는 방대한 양의 물리적 변수의
스트리밍, HD로 출력되는 HDMI신호의 스트리밍, 그리고 HDTV의 방대한 양의 영상 스트리밍등
미래의 모든 멀티미디어 기술은 복잡하다기보단 단순하고, 방대한 양의 신호와 이를 일괄적으로
해석하는 일에 포커스한다. PS3는 머리가 많은 천재형이라기보단 다리가 많은 일벌레형에 가깝다.
미래 Cell 칩에 대한 상상
그럼 다시 본론으로 돌아와서,
CBEA문서에서는 "n의 PPU를 가진 n개의 PG"와 "n개의 SPE를 가진 n개의 SG"를 정의하고 있다.
그리고 PS3의 Cell Chip은 레퍼런스 구조에 비하면 PG, SG가 필요없을 정도로 작은 스케일임을
알 수 있다. 그렇다면, 대략 예상해볼 수 있는 "현실적인" Cell 칩의 구조도는...
- 8개의 SG (각각의 SG는 8개의 SPE로 구성);;;
- 2개의 PG (각각의 PG는 4개의 PPU로 구성);;;
현존하는 4Ghz의 속도와 SPE당 2개의 Instruction, 4번의 Float/Integer 계산능력으로만 환산해도
4Ghz x 4(계산능력) x 2(Instruction) x 8(SPEs) x 8(SGs) = 2048 GFlops = 2 TFlops;;;
물론, 현존하는 최고의 슈퍼컴퓨터인 eServer Blue Gene의 280600 GFlops에는 택도 없이 모자라지만
하나의 칩으로 나올 수 있는 성능으로는 상당하다고 할 수 있겠다.
물론 게임기로 이러한 성능을 사용할 일은 거의 없겠지만, IBM에서 PowerPC군을 Cell로 대체한다면,
앞으로 이러한 프로세서를 볼날이 머지 않았을 것이다.
Cell Broadband Engine™ 사이트 바로가기
Cell Chip Programming Guide 다운받기
Cell Processor 한글 공식 설명 자료 by IBM
cell.scei.co.jp에서는 CBE(Cell Broadband Engine™)에 대한 자료를 공개하고 있는데,
게임기 외에 다른 용도를 쓰이길 원하는 Open Architecture라서 Cell 칩의 구동원리에 대한
구체적인 자료들이 많다. (일어 영어 문서 지원)
Cell Broadband Engine™ Architure
사이트를 살펴보다가, CBE(Cell Broadband Engine™) Architure ver. 1.00 문서의
CBEA-Compliant Processor(CBEA규약에 적합한 프로세서)를 정의하는 부분이 눈에 띄었는데,
여기보면 참으로 광대한 상상화가 등장한다.
우주와 같은 이 상상도는...?
Hyper-tech document 가 아닌가라는 생각이 든다. 왜 인지는 PS3에 쓰인 최초 Cell Chip의
구조를 보면 알게된다.
PS3 Cell Chip의 구조
PPE 1개에 SPE 8개. 이것이 우리가 아는 Cell 칩이다.
- 1개의 SG(SPE Group) with 8 SPEs
- 1개의 PG(PPE Group) with 1 PPU
SPE Group이 몇개인가는 Chip Specification에 나와있질 않아서 모르겠지만, IBM에서 정리한
SPE group의 정의를 보면,
– a collection of SPE threads that share scheduling attributes
– there is a default group with default attributes
– each SPE thread belongs to exactly one SPE group
때문에, PS3에 쓰일 Chip은 1개의 그룹일 가능성이 높다.
(아니라면 개개의 Thread에 대한 관리를 PPE에서 매개전달해야 함)
PS3 Chip의 철학
그렇다면, 왜 PS3의 Chip에는 복수개의 PPE가 아닌 복수개의 SPE가 들어갔을까?
이 부분은 PS3가 지향하는 목표가 "가정용 종합 엔터테인먼트"라는 것을 생각하면 알 수 있다.
가정에서 일어나는 대부분의 멀티미디어(게임포함) 행위는 스트리밍의 형태로 이해할 수 있다.
3D게임의 방대한 폴리곤, 텍스쳐의 스트리밍, 물리엔진에 연산되는 방대한 양의 물리적 변수의
스트리밍, HD로 출력되는 HDMI신호의 스트리밍, 그리고 HDTV의 방대한 양의 영상 스트리밍등
미래의 모든 멀티미디어 기술은 복잡하다기보단 단순하고, 방대한 양의 신호와 이를 일괄적으로
해석하는 일에 포커스한다. PS3는 머리가 많은 천재형이라기보단 다리가 많은 일벌레형에 가깝다.
미래 Cell 칩에 대한 상상
그럼 다시 본론으로 돌아와서,
CBEA문서에서는 "n의 PPU를 가진 n개의 PG"와 "n개의 SPE를 가진 n개의 SG"를 정의하고 있다.
그리고 PS3의 Cell Chip은 레퍼런스 구조에 비하면 PG, SG가 필요없을 정도로 작은 스케일임을
알 수 있다. 그렇다면, 대략 예상해볼 수 있는 "현실적인" Cell 칩의 구조도는...
- 8개의 SG (각각의 SG는 8개의 SPE로 구성);;;
- 2개의 PG (각각의 PG는 4개의 PPU로 구성);;;
현존하는 4Ghz의 속도와 SPE당 2개의 Instruction, 4번의 Float/Integer 계산능력으로만 환산해도
4Ghz x 4(계산능력) x 2(Instruction) x 8(SPEs) x 8(SGs) = 2048 GFlops = 2 TFlops;;;
물론, 현존하는 최고의 슈퍼컴퓨터인 eServer Blue Gene의 280600 GFlops에는 택도 없이 모자라지만
하나의 칩으로 나올 수 있는 성능으로는 상당하다고 할 수 있겠다.
물론 게임기로 이러한 성능을 사용할 일은 거의 없겠지만, IBM에서 PowerPC군을 Cell로 대체한다면,
앞으로 이러한 프로세서를 볼날이 머지 않았을 것이다.
Cell Broadband Engine™ 사이트 바로가기
Cell Chip Programming Guide 다운받기
Cell Processor 한글 공식 설명 자료 by IBM