Slides: TimeGraph: GPU Scheduling for Real-Time Multi-Tasking Environments

Similar documents
Slides: TimeGraph: GPU Scheduling for Real-Time Multi-Tasking Environments

Microsoft PowerPoint - GPGPU実践基礎工学(web).pptx

23 Fig. 2: hwmodulev2 3. Reconfigurable HPC 3.1 hw/sw hw/sw hw/sw FPGA PC FPGA PC FPGA HPC FPGA FPGA hw/sw hw/sw hw- Module FPGA hwmodule hw/sw FPGA h


特集新世代マイクロプロセッサアーキテクチャ ( 後編 ) 3. 実例 3 ユビキタス コンピューティング時代の組み込みマイクロコンピュータ, SuperH と M32R 清水徹 * 1 長谷川淳 * 2 服部俊洋 * 3 近藤弘郁 * 4 ( 株 ) ルネサステクノロジシステムソリューション統括本部

07-二村幸孝・出口大輔.indd

スライド 1

ムーアの法則に関するレポート

GPGPU


システムソリューションのご紹介

高性能計算研究室の紹介 High Performance Computing Lab.

< コンピュータの基本的仕組み > コンピュータは, クロック信号と呼ばれる周期的な論理信号に同期し, 主記憶装置に記憶され ている命令を, 以下の手順で読み込み, 実行することにより動作している. 命令読み込み Instruction Fetch 命令解読 Decode 命令実行 Executio

熊本大学学術リポジトリ Kumamoto University Repositor Title GPGPU による高速演算について Author(s) 榎本, 昌一 Citation Issue date Type URL Presentation

<4D F736F F F696E74202D2091E63489F15F436F6D C982E682E992B48D8291AC92B489B F090CD2888F38DFC E B8CDD8

Microsoft PowerPoint - GPU_computing_2013_01.pptx

GPUコンピューティング講習会パート1

GPUを用いたN体計算


main.dvi

12 PowerEdge PowerEdge Xeon E PowerEdge 11 PowerEdge DIMM Xeon E PowerEdge DIMM DIMM 756GB 12 PowerEdge Xeon E5-

ためのオーバーヘッドが課題となりつつある しかしこのオーバーヘッドに関する数値はほとんど公開されていない この論文ではこの cache coherency の時間を Linux カーネルで提供されている atomic_inc 関数を用いて測定する方法を新たに考案し 実測プログラムを作成した 実測はプ

main.dvi

パーソナルコンピュータのヘドニック回帰式

Microsoft PowerPoint - sales2.ppt

GPU n Graphics Processing Unit CG CAD

1. GPU コンピューティング GPU コンピューティング GPUによる 汎用コンピューティング GPU = Graphics Processing Unit CUDA Compute Unified Device Architecture NVIDIA の GPU コンピューティング環境 Lin

インテルの現行ラインナップは と Refresh アーキテクチャはそのままラインナップ強化 第 2 世代 Sandy Bridge 第 3 世代 Ivy Bridge 第 4 世代 Refresh アーキテクチャ刷新 AVX 対応 32nm プロセスルール 性能 電力とも大幅進化 22nm プロセス

Microsoft PowerPoint - CCS学際共同boku-08b.ppt

最新の並列計算事情とCAE

1 GPU GPGPU GPU CPU 2 GPU 2007 NVIDIA GPGPU CUDA[3] GPGPU CUDA GPGPU CUDA GPGPU GPU GPU GPU Graphics Processing Unit LSI LSI CPU ( ) DRAM GPU LSI GPU

PowerPoint プレゼンテーション

H1-4

Microsoft PowerPoint - NxLec ppt

<4D F736F F F696E74202D20837D E838D B835E82CC926190B682C694AD B93C782DD8EE682E890EA97705D>

IPSJ SIG Technical Report Vol.2013-ARC-203 No /2/1 SMYLE OpenCL (NEDO) IT FPGA SMYLEref SMYLE OpenCL SMYLE OpenCL FPGA 1

Microsoft Word ●IntelクアッドコアCPUでのベンチマーク_吉岡_ _更新__ doc

Microsoft Word - archip.doc

高性能計算研究室の紹介 High Performance Computing Lab.

untitled

GPU GPU CPU CPU CPU GPU GPU N N CPU ( ) 1 GPU CPU GPU 2D 3D CPU GPU GPU GPGPU GPGPU 2 nvidia GPU CUDA 3 GPU 3.1 GPU Core 1

-2 外からみたプロセッサ GND VCC CLK A0 A1 A2 A3 A4 A A6 A7 A8 A9 A10 A11 A12 A13 A14 A1 A16 A17 A18 A19 D0 D1 D2 D3 D4 D D6 D7 D8 D9 D10 D11 D12 D13 D14 D1 MEMR

計算機アーキテクチャ特論 後半第2回 アウトオブオーダー実行 Out-of-Order Execution

パフォーマンスレポート PRIMERGY TX100 S2

openmp1_Yaguchi_version_170530

情報科学概論

CELSIUSカタログ(2012年5月版)

資料3 今後のHPC技術に関する研究開発の方向性について(日立製作所提供資料)

! 行行 CPUDSP PPESPECell/B.E. CPUGPU 行行 SIMD [SSE, AltiVec] 用 HPC CPUDSP PPESPE (Cell/B.E.) SPE CPUGPU GPU CPU DSP DSP PPE SPE SPE CPU DSP SPE 2

車載マイコンの動向

HP Workstation Xeon 5600

スパコンに通じる並列プログラミングの基礎

160311_icm2015-muramatsu-v2.pptx

CELSIUSカタログ(2012年7月版)

TopSE並行システム はじめに

Transcription:

加藤真平計算機アーキテクチャ特論 計算機アーキテクチャ特論後半第 1 回最先端アーキテクチャのトレンド 本資料は授業用です 無断で転載することを禁じます 講師加藤真平

前半の趣旨 : 並列化プログラミング for (i = 0; i < N; i++) { x[i] = a[i] + b[i]; } シングルプロセッサ マルチプロセッサ x[0]=a[0]+b[0]; x[1]=a[1]+b[1]; x[2]=a[2]+b[2]; x[n-1]=a[n-1]+b[n-1]; シングルプロセッサ func1(); func2(); funcn(); マルチプロセッサ func1(); func2(); func3(); funcn();

後半の趣旨 : 並列アーキテクチャ Network NIC NIC NIC NIC Flash Memory Memory Memory Memory CPU Many Cores Many Cores GPU CPU

講師の紹介 加藤真平講師 IB 電子情報館南棟 491 号室 shinpei@is.nagoya-u.ac.jp 専門分野 サイバーフィジカルシステム スーパーコンピュータ クラウドコンピューティング 組込みシステム オペレーティングシステム 計算機アーキテクチャ

講義内容と成績評価 講義内容 Very Long Instruction Word (VLIW) Simultaneous Multithreading (SMT) Chip Multiprocessing (CMP) Graphics Processing Unit (GPU) Many Integrated Core (MIC) 成績評価 各講義の理解度クイズ ( 出席点含む ) レポートは未定 ( 出席率による )

今日の講義 並列アーキテクチャの使用事例 並列アーキテクチャの概要 VLIW SMT CMP GPU MIC 理解度クイズ

iphone 5 (Mobile Device) ARM Cortex-A15 (CMP) NVIDIA Tegra 3 (GPU)

MacBook Air (Laptop) Intel Nehalem (CMP&SMT)

DELL PowerEdge (Workstation) Intel Nehalem-EX (CMP&SMT) CPU CPU L3 Cache CPU CPU CPU CPU L3 Cache CPU CPU

Titan (Supercomputer) AMD Interlagos (CMP) NVIDIA Kepler GK110 (GPU)

Stampede (Supercomputer) Intel Nehalem-EX (CMP) Intel MIC (GPU)

Sequoia (Supercomputer) IBM BlueGene/Q (CMP)

津波シミュレーション ( ロスアラモス国立研究所 & ワシントン大学 )

並列アーキテクチャのトレンド VLIW SMT CMP GPU MIC ざっと見ていきましょう! ( 詳細は来週以降に説明します )

その前に なぜ並列アーキテクチャが生まれたのか? ちょっと歴史を振り返りましょう!

九州大学井上弘士先生の講義のスライドより インテル マイクロプロセッサの歴史 1971 年 世界最初のマイクロプロセッサ 4004 データ語長は4ビット 約 2,300トランジスタを使用 ( プロセス テクノロジ10μm) 動作周波数は108KHz 46 種類の命令 開発のきっかけは電卓計算用 LSI ( ビジコン社 ) 4004 1972 年 世界最初の8ビット マイクロプロセッサ 8008 約 3,500トランジスタを使用 ( プロセス テクノロジ10μm) 動作周波数は200KHz 基本的には4004とほぼ同じ 開発のきっかけは科学技術計算用 LSI ( 日本の精工舎 ) 1974 年 マイクロプロセッサ 8080 約 6,000トランジスタを使用 ( プロセス テクノロジ6μm) 8008 動作周波数は2MHz 世界最初のパーソナル コンピュータとして知られるAltair(MITS) に搭載 1978 年 16ビット マイクロプロセッサ 8016 約 29,000トランジスタを使用 ( プロセス テクノロジ3μm) 動作周波数は5MHz( 後に8MHz 10MHz 版が登場 ) 1MBのメモリ空間を扱えるようになる ( これまでは64KB)

九州大学井上弘士先生の講義のスライドより インテル マイクロプロセッサの歴史 19?? 年 8016 のデータパスを 8 ビットに縮めた 8088 開発の理由 複雑な内部構造のため処理性能が急激に低下 16 ビット対応の周辺機器やソフトが殆ど存在しない 81 年に IBM 最初のパソコン IBM PC に搭載される マイクロソフトが開発した発の OS (PC-DOS) IBM インテル マイクロソフトが終結した IBM PC が大ヒット 1982 年 マイクロプロセッサ 80286 約 134,000 トランジスタを使用 ( プロセス テクノロジ 1.5μm) 動作周波数は 6MHz( 後に 8/10/12/16MHz が登場 ) PGA パッケージを採用 現在の DOS/V パソコンの原型である IBM PC/AT に採用される 1985 年 32 ビット マイクロプロセッサ 80386 約 275,000 トランジスタを使用 ( プロセス テクノロジ?μm) 動作周波数は 12/16/20MHz 80386 80286

九州大学井上弘士先生の講義のスライドより インテル マイクロプロセッサの歴史 1989 年 キャッシュ メモリを搭載したマイクロプロセッサ 80486 約 275,000 トランジスタを使用 ( プロセス テクノロジ 1.0μm) 動作周波数は 25MHz( 当時 i386 は 33MHz) 1990 年 5 月には 33MHz 命令キャッシュ (8KB) と浮動小数点演算を内臓 5 段の命令パイプライン 1991 年 50MHz のマイクロプロセッサ i486dx i486dx2 にて 内部 (50MHz) と外部 (25MHz) で異なる周波数 1993 年 マイクロプロセッサ Pentium I586 ではなく ギリシャ語で 5 を意味する Pent に ラテン語系名詞語尾の ium を付けて Pentium の名称を作り出す 並列度 2 のスーパスカラー アーキテクチャ 16KB の L1 キャッシュ 動作周波数は 60/66MHz i486 Pentium

九州大学井上弘士先生の講義のスライドより インテル マイクロプロセッサの歴史 199? 年 L2 キャッシュを搭載したマイクロプロセッサ PentiumPro 256KB の L2 キャッシュを内臓 プロセス テクノロジ 0.8μm~0.35μm 動作周波数は 150/166/180/200MHz 1997 年 マルチメディア命令をサポート MMX Pentium 1 命令で複数データを同時に処理 57 個の新しい命令を追加 プロセス テクノロジ 0.35μm 動作周波数は 166/233MHz 1997 年 マイクロプロセッサ PentiumII (PentiumPro を改良 ) 512KB の L2 キャッシュを基板上 ( 別チップ ) に実装し 同一パッケージに搭載 動作周波数向上と低コスト化のため MMX 命令 プロセス テクノロジ 0.35μm 動作周波数は 233~450MHz PentiumPro Pentium2

九州大学井上弘士先生の講義のスライドより インテル マイクロプロセッサの歴史 1998 年 ローエンド向けマイクロプロセッサ Celeron プロセス テクノロジ0.25μm 動作周波数は300~553MHz 1999 年 マイクロプロセッサ PentiumIII MMXに更に70 個のSIMD 命令を追加 プロセス テクノロジ0.25μm 動作周波数は450~600MHz その後 0.18μmプロセスで1.1GHz 2000 年 マイクロプロセッサPentium4 プロセス テクノロジ0.18μm 4000 万個のトランジスタ 動作周波数は1.5GHz PentiumIII Pentium4

M Tran. 九州大学井上弘士先生の講義のスライドより プロセッサの回路規模はどの程度? ( トランジスタ数の観点から ) 半導体集積度は 3 年で約 4 倍に!( ムーアの法則 ) 1000 インテル プロセッサの場合 100 Pentium 4 Itanium Pentium II 10 Pentium III 1 80486 Pentium 0.1 80386 1984 1986 1988 1990 1992 1994 1996 1998 http://www-vlsi.stanford.edu/group/chips_micropro.html 2000 2002 2004

Frequency (MHz) 九州大学井上弘士先生の講義のスライドより 動作周波数の観点から ( プロセッサはどの程度高速動作する?) プロセッサの動作周波数は 3 年で約 2 倍に! 10000 インテル プロセッサの場合 Pentium 4 1000 100 Pentium III Pentium II 80486 Pentium 10 80386 1 1984 1986 1988 1990 1992 1994 1996 1998 2000 http://www-vlsi.stanford.edu/group/chips_micropro.html 22 2002 2004

SPEC INT 九州大学井上弘士先生の講義のスライドより 性能の観点から ( プロセッサはどの程度高性能なのか?) プロセッサの性能は 3 年で約 3~4 倍に! 10000 インテル プロセッサの場合 Pentium 4 1000 100 Pentium III Pentium II 10 80386 804386 Pentium 1 1984 1986 1988 1990 1992 1994 1996 1998 http://www-vlsi.stanford.edu/group/chips_micropro.html 2000 2002 23 2004

九州大学井上弘士先生の講義のスライドより プロセッサ チップはこの 34 年間で 1971 年 4 ビットの 1 チップ マイクロプロセッサ 4004 プロセス テクノロジ :10μm トランジスタ数 : 約 2,300 動作周波数 :108KHz トランジスタ数は 10 万倍以上! 動作周波数は 4 万倍以上! 2005 年 9 個のコアを搭載したチップ マルチプロセッサ Cell 人間の脳のニューロン数 >1,000 億 トランジスタ集積度は 3 年で 4 倍 2020 年にはトランジスタ数 >2,000 億 プロセス テクノロジ :90nm トランジスタ数 : 約 2 臆 3400 万 動作周波数 : 最大 4.6GHz 出展 :http://www.intel.com/museum/online/hist_micro/hof/index.htm, Sony

Power (W) 九州大学井上弘士先生の講義のスライドより おいしい話ばかりではない! ~ 消費電力の観点から ~ プロセッサの消費電力は 3 年で約 3 倍に! 1000 インテル プロセッサの場合 Pentium 4 100 Pentium III Pentium II Pentium 10 80386 80486 1 1984 1986 1988 1990 1992 1994 1996 1998 2000 2002 2004 http://www-vlsi.stanford.edu/group/chips_micropro.html

九州大学井上弘士先生の講義のスライドより 26 プロセッサの消費電力はどのくらい? F. Pollack: New Microarchitecture Challenges in the Coming Generations of CMOS Process Technologies (MICRO99)

九州大学井上弘士先生の講義のスライドより 27 その結果, どうなる? *Image http://www.semiconfareast.com Next Generation Burn-in & Test System for Athlon Microprocessors : Hybrid Burn-in, Mark Miller, Burn-in & Test Socket Workshop, 2001

プロセッサの動作周波数

並列アーキテクチャの時代に突入 ~ マルチスレッド マルチコア メニーコア ~

基礎知識 パイプライン処理 命令 A 命令 B 命令 C 命令 D IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB スーパースカラ方式 命令 A 命令 B 命令 C 命令 D 命令 E 命令 F IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB 時間

VLIW: Very Long Instruction Word 命令 A 命令 B 命令 C 命令 D IF ID EX MEM WB EX EX IF ID EX MEM WB EX EX IF ID EX MEM WB EX EX IF ID EX MEM WB EX EX 1 つの命令に複数の命令 ( 固定長 ) を詰め込む方式 よって命令のワード長がとても長くなる (Very Long)

スーパースカラと VLIW の限界 命令レベル並列性 Instruction Level Parallelism (ILP) プログラムの中で複数同時に実行できる命令の数には限界がある ( ハザードなど )

クロックサイクル SMT: Simultaneous Multithreading 複数のプログラムから並列性を抽出 命令発行スロット命令発行スロット命令発行スロット スーパースカラ 細粒度マルチスレッディング + スーパースカラ SMT

SMT の限界 スレッドレベル並列性 Thread Level Parallelism (ILP) 複数のプログラムがハードウェア資源を共有し パイプライン上で競合する

SMT の限界 スレッド間の競合が発生 Thread Thread Intel ではハイパースレッディングとも呼ぶ Processor Cache Interconnect (PCIバスなど) Main Memory I/O

CMP: Chip Multiprocessing コアごとに資源分割 Processor Core Processor Core Cache Cache Processor Cache 一般的にはマルチコアと呼ばれている Interconnect (PCIバスなど) Main Memory I/O

マルチコアの登場により速くて大きい 1 つプロセッサではなく遅くて小さい複数のプロセッサが好まれる時代へ

GPU: Graphics Processing Unit NVIDIA Kepler GeForce GTX 680 1536 small cores L1 L1 L1 L1 L1 L1 L1 L2 Cache Video Memory CPU Main Memory

MIC: Many Integrated Core Intel MIC Knights Corner 64 big cores X86 Vec L1 Cache X86 Vec L1 Cache X86 Vec L1 Cache L2 Cache L2 Cache L2 Cache Interprocessor Network Memory & I/O Interface CPU Main Memory

GFLOPS GFLOPS / Watt 42 CPU と GPU の性能比較 3200 2800 2400 単精度浮動小数点性能 GTX 680 2000 NVIDIA GPU 1600 Intel CPU GTX 580 GTX 480 1200 GTX 285 GTX 280 800 9800 GTX 8800 GTX 400 7900 GTX E4300 E6850 Q9650 E7-8870 X7460 980 XE 0 2006/3/4 2007/9/15 2009/3/28 2010/10/9 2012/4/21 18.00 16.00 14.00 12.00 10.00 8.00 NVIDIA GPU Intel CPU 電力性能 GTX 680 6.00 GTX 580 9800 GT GTX 285 GTX 480 4.00 GTX 280 8800 GTX E7-8870 2.00 7900 GTX Q9650 E4300 E6850 X7460 980XE 0.00 2006/3/4 2007/9/15 2009/3/28 2010/10/9 2012/4/21

2012 年 11 月のスパコンランキング CMP GPU CMP CMP (SMT) CMP CMP CMP CMP MIC CMP GPU CMP CMP

システムとプロセッサの市場シェア プロセッサ システム

GPU と MIC の台頭

電力と性能 電力電力 ( 予想 ) 性能 / 電力

この講義の方針 1. 目的ごとに異なる計算機システムおよびアプリケーションに適したアーキテクチャを選定できる知識を育む 2. 計算機アーキテクチャの研究室を有する大学院のような講義内容にはしない

参考文献 VLIW Software pipelining: An effective scheduling technique for VLIW machines Lam et. al., PLDI 1988 SMT Simultaneous multithreading: maximizing on-chip parallelism Tullsen et. al., ISCA 1995 CMP The case for a single-chip multiprocessor Olukotun et. al., ASPLOS 1996 GPU NVIDIA Tesla: A Unified Graphics and Computing Architecture Lindholm et. al., IEEE Micro 2008 MIC Larrabee: A Many-Core x86 Architecture for Visual Computing Seiler et. al., SIGGRAPH 2008

理解度クイズ 当日配布