rank ”«‘‚“™z‡Ì GPU ‡É‡æ‡éŁÀŠñ›»

Similar documents
untitled

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

main.dvi

PDF



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


B5‘·¢‡Ì…X…X…†PDFŠp

JPROM-PRINT

untitled

Microsoft Word - ‰IŠv⁄T†`⁄V87†`97.doc


u u u 1 1

supercomputer2010.ppt

マルチコアPCクラスタ環境におけるBDD法のハイブリッド並列実装

! 行行 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

10D16.dvi

RaVioli SIMD




野岩鉄道の旅

表紙_02



好きですまえばし

73 p p.152

Microsoft Word - 田中亮太郎.doc

_Print

p

9

() L () 20 1

戦後の補欠選挙

日経テレコン料金表(2016年4月)

B


122011pp

2

A p A p. 224, p B pp p. 3.

スラヴ_00A巻頭部分

Microsoft Word - 映画『東京裁判』を観て.doc

308 ( ) p.121

広報かみす 平成28年6月15日号

.

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

円借款案件事後評価報告書2000(全文版・第3巻)

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

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

第122号.indd

main.dvi

音声読み上げブラウザの読み上げかた

EGunGPU

GPU Computing on Business

CPU CPU CPU CPU CPU 5-1 PRAM logp π c /(17)

Excel97関数編

Images per Second Images per Second VOLTA: ディープラーニングにおける大きな飛躍 ResNet-50 トレーニング 2.4x faster ResNet-50 推論 TensorRT - 7ms レイテンシ 3.7x faster P100 V100 P10

ProLiant ML115 Generation 1 システム構成図

HPC (pay-as-you-go) HPC Web 2

GPU.....

HPC可視化_小野2.pptx

23_33.indd

情報量・音声画像動画のA/D変換

倍々精度RgemmのnVidia C2050上への実装と応用

CPU Levels in the memory hierarchy Level 1 Level 2... Increasing distance from the CPU in access time Level n Size of the memory at each level 1: 2.2

GPU n Graphics Processing Unit CG CAD

Microsoft PowerPoint - GPUシンポジウム _d公開版.ppt [互換モード]

名称 : 日本 GPU コンピューティングパートナーシップ (G-DEP) 所在 : 東京都文京区本郷 7 丁目 3 番 1 号東京大学アントレプレナープラザ, 他工場 URL アライアンスパートナー コアテクノロジーパートナー NVIDIA JAPAN ソリュ

Fuzzy Multiple Discrimminant Analysis (FMDA) 5) (SOM) 6) SOM 3 6) SOM SOM SOM SOM SOM SOM 7) 8) SOM SOM SOM GPU 2. n k f(x) m g(x) (1) 12) { min(max)

untitled

459

周辺機器_高解像_1

( CUDA CUDA CUDA CUDA ( NVIDIA CUDA I

DEIM Forum 2019 H2-2 SuperSQL SuperSQL SQL SuperSQL Web SuperSQL DBMS Pi

2

MKS14oct_all.pdf

フカシギおねえさん問題の高速計算アルゴリズム

211 年ハイパフォーマンスコンピューティングと計算科学シンポジウム Computing Symposium 211 HPCS /1/18 a a 1 a 2 a 3 a a GPU Graphics Processing Unit GPU CPU GPU GPGPU G


DO 時間積分 START 反変速度の計算 contravariant_velocity 移流項の計算 advection_adams_bashforth_2nd DO implicit loop( 陰解法 ) 速度勾配, 温度勾配の計算 gradient_cell_center_surface 速

An Interactive Visualization System of Human Network for Multi-User Hiroki Akehata 11N F

Lecture on

REALV5_A4…p_Ł\1_4A_OCF

untitled

「都市から地方への人材誘致・移住促進に関する調査」

<91498EE88CA D815B2E786C73>

〔 大 会 役 員 〕

橡本体資料+参考条文.PDF

IPSJ SIG Technical Report Vol.2014-ARC-213 No.24 Vol.2014-HPC-147 No /12/10 GPU 1,a) 1,b) 1,c) 1,d) GPU GPU Structure Of Array Array Of

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

( ) 1

HPEハイパフォーマンスコンピューティング ソリューション

HP Workstation 総合カタログ

DEIM Forum 2017 H ,

単位、情報量、デジタルデータ、CPUと高速化 ~ICT用語集~

FIT2013( 第 12 回情報科学技術フォーラム ) I-032 Acceleration of Adaptive Bilateral Filter base on Spatial Decomposition and Symmetry of Weights 1. Taiki Makishi Ch


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

56 OS OS OS OS 1 OS HDD OS 1 OS HDD HDD OS OS OSOS HDD 図 1 二重キャッシュ環境 3. 負の参照の時間的局所性 3.1 参照の局所性 Locality of Reference Temporal locality Spatial localit

Transcription:

rank GPU ERATO 2011 11 1 1 / 26

GPU rank/select wavelet tree balanced parenthesis GPU rank 2 / 26

GPU rank/select wavelet tree balanced parenthesis GPU rank 2 / 26

GPU rank/select wavelet tree balanced parenthesis GPU rank 2 / 26

1 2 3 CUDA 4 5 6 3 / 26

1 2 3 CUDA 4 5 6 4 / 26

x {0, 1} n b {0, 1} rank b (x, i) := x[1i] b rank 1 (x 1, 4) = 2 rank 0 (x 2, 7) = 3 1 2 3 4 5 6 7 8 9 10 x 1 = 0 1 1 0 0 1 1 1 0 0 x 2 = 1 0 1 1 1 0 0 0 1 0 5 / 26

x {0, 1} n b {0, 1} rank b (x, i) := x[1i] b rank 1 (x 1, 4) = 2 rank 0 (x 2, 7) = 3 1 2 3 4 5 6 7 8 9 10 x 1 = 0 1 1 0 0 1 1 1 0 0 x 2 = 1 0 1 1 1 0 0 0 1 0 5 / 26

x {0, 1} n b {0, 1} rank b (x, i) := x[1i] b x {0, 1} n rank b (x, i) O(1) o(n) GPU 6 / 26

Jacobson 89 rank 0 (B, i) = i rank 1 (B, i) rank 1 (B, i) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 1 B L L = log 2 n LT 2 B S S = log n/2 ST rank 1 (B, i) = LT[i/L] + ST[i/S] + rank 7 / 26

Jacobson 89 rank 0 (B, i) = i rank 1 (B, i) rank 1 (B, i) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 1 B L L = log 2 n LT 2 B S S = log n/2 ST rank 1 (B, i) = LT[i/L] + ST[i/S] + rank 7 / 26

Jacobson 89 rank 0 (B, i) = i rank 1 (B, i) rank 1 (B, i) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 1 B L L = log 2 n LT 2 B S S = log n/2 ST rank 1 (B, i) = LT[i/L] + ST[i/S] + rank 7 / 26

Jacobson 89 rank 0 (B, i) = i rank 1 (B, i) rank 1 (B, i) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 1 B L L = log 2 n LT 2 B S S = log n/2 ST rank 1 (B, i) = LT[i/L] + ST[i/S] + rank 7 / 26

Jacobson 89 rank 0 (B, i) = i rank 1 (B, i) rank 1 (B, i) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 ST 0 1 2 0 2 3 0 1 3 1 B L L = log 2 n LT 2 B S S = log n/2 ST rank 1 (B, i) = LT[i/L] + ST[i/S] + rank 7 / 26

Jacobson 89 rank 0 (B, i) = i rank 1 (B, i) rank 1 (B, i) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 ST 0 1 2 0 2 3 0 1 3 1 B L L = log 2 n LT 2 B S S = log n/2 ST rank 1 (B, i) = LT[i/L] + ST[i/S] + rank 7 / 26

Jacobson 89 rank 0 (B, i) = i rank 1 (B, i) rank 1 (B, i) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 ST 0 1 2 0 2 3 0 1 3 1 B L L = log 2 n LT 2 B S S = log n/2 ST rank 1 (B, i) = LT[i/L] + ST[i/S] + rank 7 / 26

Jacobson 89 rank 0 (B, i) = i rank 1 (B, i) rank 1 (B, i) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 ST 0 1 2 0 2 3 0 1 3 1 B L L = log 2 n LT 2 B S S = log n/2 ST rank 1 (B, i) = LT[i/L] + ST[i/S] + rank 7 / 26

Jacobson 89 rank 0 (B, i) = i rank 1 (B, i) rank 1 (B, i) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 ST 0 1 2 0 2 3 0 1 3 1 B L L = log 2 n LT 2 B S S = log n/2 ST rank 1 (B, i) = LT[i/L] + ST[i/S] + rank 7 / 26

1 2 3 CUDA 4 5 6 8 / 26

CUDA GPU NVIDIA GPU C / C++ Single Instruction Multiple Thread SIMT 32 9 / 26

10 / 26

4GB 1 49kB 11 / 26

CUDA = 1024 1024 64 128 256 = 65535 65535 65535 200 300 12 / 26

1 2 3 CUDA 4 5 6 13 / 26

1 Population count (Popcount) 32bit / 64bit 1 GPU 2 Prefix sum (x ( 1, x 2,, x k,, x n ) x 1, x 1 + x 2,, k i=1 x k,, ) n i=1 x i O(log n) 14 / 26

Prefix Sum 1 1 i 2 i 1 5 3 9 7 6 2 3 1 1 5 2 3 5 8 17 24 30 32 35 36 15 / 26

Prefix Sum 1 1 i 2 i 1 5 3 9 7 6 2 3 1 1 5 8 12 16 13 8 5 4 2 3 5 8 17 24 30 32 35 36 15 / 26

Prefix Sum 1 1 i 2 i 1 5 3 9 7 6 2 3 1 1 5 8 12 16 13 8 5 4 2 3 5 8 17 24 30 32 35 36 15 / 26

Prefix Sum 1 1 i 2 i 1 5 3 9 7 6 2 3 1 1 5 8 12 16 13 8 5 4 2 5 8 17 24 25 24 18 12 3 5 8 17 24 30 32 35 36 15 / 26

Prefix Sum 1 1 i 2 i 1 5 3 9 7 6 2 3 1 1 5 8 12 16 13 8 5 4 2 5 8 17 24 25 24 18 12 3 5 8 17 24 30 32 35 36 15 / 26

Prefix Sum 1 1 i 2 i 1 5 3 9 7 6 2 3 1 1 5 8 12 16 13 8 5 4 2 5 8 17 24 25 24 18 12 3 5 8 17 24 30 32 35 36 5 8 17 24 30 32 35 36 15 / 26

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 ST 0 1 2 0 2 3 0 1 3 1 B L L = log 2 n LT 2 B S S = log n/2 ST 1 1 1 1 16 / 26

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 LT 0 4 7 ST 0 1 2 0 2 3 0 1 3 1 B L L = log 2 n LT 2 B S S = log n/2 ST 1 1 1 1 16 / 26

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 1 Popcount 2 Prefix Sum 3 1 ST 4 1 LT 5 LT Prefix Sum 17 / 26

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 1 1 2 2 1 0 1 2 0 1 Popcount 2 Prefix Sum 3 1 ST 4 1 LT 5 LT Prefix Sum 17 / 26

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 1 1 2 2 1 0 1 2 0 (Prefix sum) 1 2 4 2 3 3 1 3 3 1 Popcount 2 Prefix Sum 3 1 ST 4 1 LT 5 LT Prefix Sum 17 / 26

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 1 1 2 2 1 0 1 2 0 (Prefix sum) 1 2 4 2 3 3 1 3 3 ST 0 1 2 0 2 3 0 1 3 1 Popcount 2 Prefix Sum 3 1 ST 4 1 LT 5 LT Prefix Sum 17 / 26

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 1 1 2 2 1 0 1 2 0 (Prefix sum) 1 2 4 2 3 3 1 3 3 ST 0 1 2 0 2 3 0 1 3 LT 0 4 3 1 Popcount 2 Prefix Sum 3 1 ST 4 1 LT 5 LT Prefix Sum 17 / 26

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 1 1 2 2 1 0 1 2 0 (Prefix sum) 1 2 4 2 3 3 1 3 3 ST 0 1 2 0 2 3 0 1 3 LT 0 4 3 (Prefix sum) 0 4 7 1 Popcount 2 Prefix Sum 3 1 ST 4 1 LT 5 LT Prefix Sum 17 / 26

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 ST 0 1 2 0 2 3 0 1 3 LT 0 4 7 1 Popcount 2 Prefix Sum 3 1 ST 4 1 LT 5 LT Prefix Sum 17 / 26

LT n = 2 32 16MB GPU CPU Prefix sum 18 / 26

LT n = 2 32 16MB GPU CPU Prefix sum 18 / 26

Prefix Sum 1 2 Prefix Sum 3 4 1 5 Prefix Sum 6 Prefix Sum 19 / 26

1 2 3 CUDA 4 5 6 20 / 26

CPU AMD Phenom X4 9850 (25GHz) GPU Tesla C2070 115 GHz 4 GB 49 kb Sux: Implementing Succinct Data Structures Broadword Implementation of Rank / Select Queries S Vigna WEA 2008: 7th International Workshop on Experimental Algorithms (pp 154-168) 21 / 26

(1) 2 log n 64 256 4,194,304 100Mbit 1Gbit 3Gbit Sux(CPU) 0932058 s 9372586 s 28005750 s GPU 0089909 s 0397739 s 1027892 s CPU/GPU 1037 2356 2725 = 04 s n = 3G 22 / 26

(1) 2 log n 64 256 4,194,304 100Mbit 1Gbit 3Gbit Sux(CPU) 0932058 s 9372586 s 28005750 s GPU 0089909 s 0397739 s 1027892 s CPU/GPU 1037 2356 2725 = 04 s n = 3G 22 / 26

(1) 2 log n 64 256 4,194,304 100Mbit 1Gbit 3Gbit Sux(CPU) 0932058 s 9372586 s 28005750 s GPU 0089909 s 0397739 s 1027892 s CPU/GPU 1037 2356 2725 = 04 s n = 3G 22 / 26

(1) 2 log n 64 256 4,194,304 100Mbit 1Gbit 3Gbit Sux(CPU) 0932058 s 9372586 s 28005750 s GPU 0089909 s 0397739 s 1027892 s CPU/GPU 1037 2356 2725 = 04 s n = 3G 22 / 26

(1) 2 log n 64 256 4,194,304 100Mbit 1Gbit 3Gbit Sux(CPU) 0932058 s 9372586 s 28005750 s GPU 0089909 s 0397739 s 1027892 s CPU/GPU 1037 2356 2725 = 04 s n = 3G 22 / 26

(2) n = 3G 2 log n 64 m 2771 23 / 26

(2) n = 3G 2 log n 64 m 2771 23 / 26

(3) n = 3G k 2 log n 64k m 2825 24 / 26

(3) n = 3G k 2 log n 64k m 2825 24 / 26

1 2 3 CUDA 4 5 6 25 / 26

GPU 28 GPU 26 / 26

GPU 28 GPU 26 / 26