GPU
初級

Tensor Core(テンソルコア)

AI・機械学習向けの行列演算に特化したNVIDIA GPU内蔵プロセッサ

0 回閲覧
0 いいね
2026/4/25 更新
関連タグ
GPU
グラフィックス
自作PC
初心者向け

Tensor Core(テンサーコア)は、NVIDIA GPUに搭載された機械学習向けの専用演算ユニットで、行列積和演算(Matrix Multiply-Accumulate)を高速に実行し、AI推論やトレーニングを劇的に高速化します。

演算能力

通常のCUDAコア:
スカラー演算: 1演算/サイクル

Tensor Core(第3世代):
行列演算: 256演算/サイクル(FP16)
スピードアップ: 最大16倍

世代別性能

世代GPU演算精度TFLOPS
第1世代V100FP16125
第2世代RTX 20FP16, INT8110
第3世代RTX 30FP16, BF16, TF32, INT8285
第4世代RTX 40FP8, FP16, BF16, TF32, INT81,321

精度と用途

FP8(RTX 40):
- 推論特化
- 最高速度
- 精度: 低

FP16/BF16:
- 標準的な学習
- バランス型
- 精度: 中

TF32:
- FP32互換
- 既存コード対応
- 精度: 高

INT8/INT4:
- 量子化推論
- 最高効率
- 精度: 用途限定

DLSS(ゲーミング)

DLSS 3の処理フロー:
1. 低解像度レンダリング
2. Tensor Coreで超解像
3. Frame Generation
4. 4K出力

性能向上: 2-4倍のFPS

AI画像生成

# Stable Diffusion例
# Tensor Core自動利用
import torch

# 自動混合精度有効化
with torch.cuda.amp.autocast():
    # FP16で高速推論
    output = model(input)

# 速度向上: 2-3倍

機械学習トレーニング

タスクCUDAのみTensor Core高速化
ResNet-501,000 img/s7,000 img/s7倍
BERT30 seq/s200 seq/s6.6倍
GPT-3実用不可実用的-

PyTorch活用

# Tensor Core有効化
torch.backends.cudnn.benchmark = True
torch.backends.cuda.matmul.allow_tf32 = True

# 混合精度トレーニング
from torch.cuda.amp import GradScaler, autocast

scaler = GradScaler()
with autocast():
    output = model(input)
    loss = criterion(output, target)

scaler.scale(loss).backward()
scaler.step(optimizer)
scaler.update()

TensorFlow/Keras

# 混合精度ポリシー
from tensorflow.keras import mixed_precision

policy = mixed_precision.Policy('mixed_float16')
mixed_precision.set_global_policy(policy)

# 自動的にTensor Core使用
model.compile(...)
model.fit(...)

対応GPU

コンシューマー向け:
- RTX 2060以上(第2世代)
- RTX 3050以上(第3世代)
- RTX 4060以上(第4世代)

プロフェッショナル:
- RTX A2000以上
- A100, H100(データセンター)

システム要件

  • CUDA: 11.0以上
  • cuDNN: 8.0以上
  • ドライバー: 450.xx以上
  • メモリ: 混合精度でも大量必要

バッチサイズ

最適なバッチサイズ:
- 8の倍数(必須)
- 可能なら64, 128, 256
- メモリ許容最大値

理由: Tensor Coreは8×8行列が基本単位

レイヤー設計

# 良い例: チャンネル数8の倍数
Conv2d(in_channels=256, out_channels=512, ...)

# 悪い例: 奇数や素数
Conv2d(in_channels=257, out_channels=511, ...)

実測値(RTX 4090)

タスク: ResNet-50推論
バッチサイズ: 128

FP32(CUDAコア): 2,500 img/s
FP16(Tensor Core): 8,000 img/s
INT8(Tensor Core): 15,000 img/s

AMD Matrix Core

  • CDNA/RDNA 3: 搭載開始
  • 性能: Tensor Core対抗
  • エコシステム: 発展途上

Intel XMX

  • Arc/Xe: AI推論対応
  • 用途: 主に推論
  • 互換性: OneAPI

Tensor Core未使用

確認方法:
nvidia-smi dmon
# SMACT列でTensor使用率確認

原因と対策:
1. データ型: FP32 → FP16/TF32
2. バッチサイズ: 8の倍数に
3. ライブラリ: 最新版に更新

メモリ不足

対策:
1. gradient_checkpointing有効化
2. バッチサイズ削減
3. モデル並列化
4. より大容量GPU

第5世代予測

  • FP4対応: さらなる高速化
  • Transformer専用: LLM最適化
  • スパース演算: 90%圧縮対応
  • 1PFLOPS超: 単一GPU

Tensor Coreは現代のAI/MLワークロードに不可欠な技術となっており、ゲーミングから科学計算まで幅広い用途で活用されています。適切に活用することで、劇的な性能向上を実現できます。

この記事について
カテゴリーGPU
難易度初級
作成日2025/7/16