
Tenstorrent Blackhole 사용 시작하기
요약
Tenstorrent의 제3세대 AI 가속기인 Blackhole의 하드웨어 구조와 초기 셋업 과정을 소개합니다. MIMD 방식의 Tensix 코어 아키텍처와 데이터 플로우 기반의 동작 원리, 그리고 P100 모델의 물리적 설치 요구 사항을 다룹니다.
핵심 포인트
- MIMD 라이크 아키텍처와 데이터 플로우 방식 채택
- Tensix 코어 내 5개의 RISC-V CPU 탑재
- Blackhole 세대는 FP8 기준 최대 664TFLOPS 성능 실현
- Ethernet을 통한 대규모 클러스터 확장 가능
Tenstorrent는 미국 캘리포니아주 산타클라라에 본사를 두고 AI 가속기(AI Accelerator)를 만들고 있는 회사입니다.
AI 가속기라고 하면 NVIDIA나 AMD(SIMD), Qualcomm(VLIW) 등도 만들고 있지만, 동사의 제품은 이들과는 다른 아키텍처(MIMD 라이크)를 특징으로 합니다. 약간의 오해의 소지가 있을 수 있지만, Xeon Phi와 유사한 접근 방식이라고 하면 이해하기 쉬울까요(그런 게 있었죠!).
다만, AI용 제품을 표방하는 만큼 저정밀도 연산에 특화되어 있습니다.
이번에는 셋업(Setup) 단계이므로, 상세한 프로그래밍에 대해서는 해설하지 않습니다. 그것들은 별도의 기사로 다룰 예정입니다.
Tenstorrent제 가속기는 계산 유닛과 NoC(Network On Chip) 라우터의 조합으로 구성되어 있습니다. 이를 Tensix Core라고 부릅니다.
Tensix 코어에는 5개의 RISC-V CPU(Baby RISC-V라고 불림)가 탑재되어 있으며, 그중 2개는 NoC 라우터를 제어하고, 3개는 계산 유닛에 데이터를 흘려넣고, 계산 유닛을 실제로 조작하며, 계산된 데이터를 꺼내어 저장하는 역할을 수행합니다.
주의할 점은, 계산 대상 데이터는 기본적으로 Baby RISC-V 상에서 계산되지 않는다는 것입니다. 평소에는 어디까지나 데이터의 흐름을 제어할 뿐입니다. 이 점은 데이터 플로우 아키텍처(Dataflow Architecture)적인 측면이 있습니다.
(사실 Baby RISC-V는 계산을 못 하는 것은 아니다)
흘려넣는 데이터와 그 제어의 원리에 대해서는 TT-Metalium에 대해 해설하는 회차에서 설명하도록 하겠습니다.
Blackhole은 Tenstorrent가 제조하는 제3세대 AI 가속기입니다.
전 세대인 Wormhole으로부터 핵심인 Tensix 코어의 구조는 변하지 않지만, 클럭은 최대 1.35GHz까지 끌어올려졌으며, FP8로 최대 664TFLOPS를 실현하고 있습니다.
Blackhole 세대에는 현재 크게 P100과 P150 두 종류가 있습니다.
P100과 P150의 가장 큰 차이점은 QSFP를 통한 확장에 대응하는지 여부입니다.
칩 간에는 Ethernet으로 확장할 수 있게 되어 있어, 대규모 클러스터(Cluster)를 구축할 수 있습니다.
P150a와 P150b의 차이는 공랭 팬이 달려 있는지 여부입니다.
이 기사에서는 P100a를 다룹니다.
호스트 측 하드웨어에 필요한 요구 사항으로 공식 문서에서는 다음과 같이挙げられています.
| 부품 | 요구 사항 |
|---|---|
| CPU | x86_64 아키텍처 |
| ... |
12VHPWR 변환 케이블은 sense 핀의 사정 때문인지 사용할 수 없는 것들이 있으므로, 직접 달려 있는 파워 서플라이(Power Supply Unit)를 권장합니다.
이것은 PCIe 카드 전반에 해당할지도 모르겠지만...
이 환경에 설치했습니다.
[자신의 환경]
PCIe 카드 형태이므로 그래픽 카드처럼 장착하기만 하면 됩니다.

(저가형 스마트폰으로 찍었더니 노이즈가 너무 심하다. 급히 교체를 검토 중)
또한 커버가 전체 금속제라 무거우므로, 그래픽 카드 지지대(GPU Holder)를 사용하는 것을 권장합니다(제 환경에서는 지지대 같은 것이 PC 케이스에 달려 있어서 그것을 사용했습니다).
컴퓨터의 전원을 켜고, 위에 보이는 것처럼 보드 위의 빨간색과 초록색 LED가 점등되면 정상적으로 설치된 것입니다.
스펙 시트상으로는 PCIe 5.0 연결이라고 기술되어 있지만, 필자의 환경에서는 Gen 5로 링크업(Link-up)할 수 없어, BIOS에서 메인보드 측의 PCIe 슬롯 속도를 Gen 4로 낮추어 작동시켰습니다.
부팅 후 터미널에서 lspci를 실행하여 01:00.0 Processing accelerators: Tenstorrent Inc Blackhole과 같이 인식되는지 확인하십시오.
여기까지 줄줄이 써 내려왔습니다만, 처음에 파워 서플라이가 원인이 되어 켜지지 않아서 꽤 고생했습니다.
메인 PC(12VHPWR 없음)에 장착했을 때, 초록색 LED가 점등되지 않고 또한 tt-smi에서 인식되지 않아, 지인에게 연락하여 부품을 도쿄의 모처로 가져가 검증한 결과 작동했기에, Ark와 Tsukumo에서 지인의 도움을 받아 부품을 급히 조달하여 급히 머신을 신규 구축(다른 파워 서플라이를 유용 ←!)했음에도 불구하고 작동하지 않지 않느냐며.
"이거 파워 문제 아냐?"가 되어, 파워 서플라이도 다시 조달하는 무모한 짓을 저질렀습니다.
솔직하게 ATX 3 대응 파워 서플라이나, 동작 보고가 있는 변환 케이블을 구매하십시오.
apt 리포지토리(Repository)를 업데이트해 두겠습니다.
sudo apt update
Tenstorrent의 드라이버와 각종 소프트웨어 설치를 위한 스크립트가 공식적으로 제공되고 있습니다.
설치용 스크립트는 curl과 jq가 필요하므로 미리 설치해 둡니다.
sudo apt install curl jq
다음 스크립트를 사용하면 필요한 컴포넌트를 설치할 수 있습니다.
https://github.com/tenstorrent/tt-installer/releases/latest/download/install.sh
헤드리스 설치 (Headless installation)를 하거나 드라이버 버전을 지정하고 싶은 경우가 아니라면 그대로 실행해도 문제없을 것입니다 (단, 항상 출처를 알 수 없는 스크립트 실행에는 주의하십시오. 바라는 점이 있다면 드라이버도 apt를 통해 설치할 수 있게 되면 좋겠습니다).
URL에서 curl로 직접 실행하거나 파일로 저장하여 실행하면 다음과 같은 출력을 기대할 수 있습니다.
__ __ __
/ /____ ____ _____/ /_____ _____________ ____ / /_
/ __/ _ \/ __ \/ ___/ __/ __ \/ ___/ ___/ _ \/ __ \/ __/
...
커널 모드 드라이버 (Kernel mode driver), 펌웨어 (Firmware), tt-smi (텔레메트리 확인 도구), 펌웨어 재기록 도구 (Firmware rewriting tool) 등이 설치됩니다.
설치를 시작하려면 y를 입력하고 Enter 키를 누릅니다.
도중에 sudo 권한을 위한 비밀번호를 요구하므로 입력합니다.
설치 막바지에 펌웨어 업데이트가 자동으로 수행되므로, 플래싱 (Flashing) 중에는 중단하거나 전원을 끄지 마십시오.
홈 디렉토리 바로 아래에 .tenstorrent-venv라는 Python 가상 환경 (Virtual environment)이 생성됩니다.
source .tenstorrent-venv/bin/activate를 실행한 후에 tt-smi로 보드의 상태를 확인합니다.
정상적으로 설치되었다면 다음과 같이 나타납니다.

이 글에서 설명하는 내용은 여기까지입니다. 다음에는 TT-Metalium을 사용한 개발 환경 구축에 대해 다루겠습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기