1 2 the maven vector-thread architecture 2...

Post on 28-Jun-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

The Maven Vector-Thread ArchitectureYunsup Lee1, Rimas Avizienis1, Alex Bishara1, Richard Xia1, Derek Lockhart2,

Christopher Batten2, Krste Asanovic1

1Parallel Computing Laboratory, UC Berkeley2Computer Systems Laboratory, Cornell University

1 Motivation

Future manycore processorswill be energy-constrained,and thus the primary metric forevaluating these architectureswill be their energy-efficiency.In this work, we investigatenew architectural and mi-croarchitectural mechanismswhich enable a wider array ofapplications to be mapped toenergy-efficient vector units.

2 Architectural Patterns

Three different architectural patterns (excluding subword-SIMD and SIMT) wereevaluated in terms of their performance, energy efficiency and area. Maven is anew vector-thread architecture, which is based on a vector-SIMD architecture, addsminimal hardware to support irregular DLP well, and is considerably simpler toimplement than previous vector-thread designs.

3 Maven Programming Methodology

4 Maven Tile Microarchitecture

We focus on comparing the various architectural design patterns with respect to asingle data-parallel tile. Example tiles are a MIMD tile, a vector tile with foursingle-lane cores, or one four-lane core. To manage complexity of many designpoints, we developed a library of parameterized synthesizable RTL components.

Tile Configurations

Maven Core Microarchitecture

5 Evaluation Framework

Toolflow

An Example VLSI Layout

Core 0 Core 1 Core 2

Core 3

CP I$

VU I$

D$XBAR

1.8mm

3.3mm

6 Evaluation Results

We first compare tile configurations based on their cycle time and area before exploring the impact of variousmicroarchitectural optimizations. We then compare implementation efficiency and performance of the Maven VTpattern against the MIMD, and vector-SIMD patterns for the six application kernel.

Area & Cycle Time

mimd-c4 vsimd+bi

vt-c4v1 vt-c4v1+bi

vt-c1v4+bi+2s

r32

r64

r128

r256

c1v4r256c4v1r256

r256

r256+br256+bi

r256+2sr256+2s+d

r256

r256+mc

0.00

0.25

0.50

0.75

1.00

1.25

1.50

1.75

Nor

mal

ized

Are

a

ctrlregmemfpintcpi$d$

!"#$%&'()"#

*"+,'-./()0)1(2-3.45&2(/,6-

7589

:"/(2-;',(-755<9

!=12,-:45,-7#09

!"!#$%&'() *&+,-*(.$*/* (0. *0*1 !"!#$%&'2& )*2,-*(1$)&. &01 *0*( !"!#$%&'*)/ )&),-*)&$)2* &0) *0*+ !"!#$%&')32 )++,-))*$)+/ &0. *0). 45"!#$%&4*')3267" (+2,-)*($((* 302 *0(. 45"!#$%*4&')3267" ))&,-*(.$)3) (0+ *0&2 48$%&4*')32 &)/,-*2)$(*/ 20( *0&. 48$%&4*')3267 &1&,-*&.$).* 302 *0(* 48$%&4*')3267" &&3,-*.)$)+/ 30+ *0() 48$%&4*')3267"6)5 &1+,-))3$(1& 30+ *0() 48$%&4*')3267"6)56# &*1,-*2/$(11 30+ *0(2 48$%*4&')3267"6)5 )13,-***$*2. (0+ *0&) 48$%*4&')3267"6)56!% ))(,-**/$*.( &01 *0&)

Performance and Energy Efficiency

Impact of Additional Physical Registers, Intra-Lane Regfile Banking, and Additional Per-Bank Integer ALUs

0.8 1.0 1.2 1.4 1.6 1.8 2.0 2.2 2.4 2.6Normalized Tasks / Sec

0.40.50.60.70.80.91.01.11.21.31.41.51.6

Nor

mal

ized

Ene

rgy

/Tas

k

r32

r64

r128

r256

r32

r64r128

r256r128 r256 r128 r256

mimd-c4vt-c4v1vt-c4v1+bvt-c4v1+bi

mimd-c4 vt-c4v1 vt-c4v1+b vt-c4v1+bi

r32r64r128r256

r32r64r128r256

r128r256

r128r256

0

5

10

15

20

25

30

Ene

rgy

/Tas

k(u

J)

ctrlregmemfpint

cpi$d$leak

Impact of Density-Time Execution and Stack-Based Convergence Schemes / Impact of Memory Coalescing

2.0 4.0 6.0 8.0 10.0 12.0 14.0Normalized Tasks / Sec

0.00.10.20.30.40.50.60.70.80.91.0

Nor

mal

ized

Ene

rgy

/Tas

k FIFO

FIFO+dt

1-stack1-stack+dt 2-stack

2-stack+dtcmv

+FIFO

cmv+2-stack+dt

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0Normalized Tasks / Sec

1

2

3

4

5

6

Nor

mal

ized

Ene

rgy

/Tas

k

vec ld/st

uT ld/st

uT ld/st + mem coalescing

Implementation Efficiency and Performance for MIMD, vector-SIMD, and VT Patterns Running Application Kernels

0.5 1.0 1.50.0

0.5

1.0

1.5

2.0

Nor

mal

ized

Ene

rgy

/Tas

k

r32

mlane

mcore

0.5 1.0 1.5

r32

mlane

mcore

1.0 2.0 3.0

r32 mcore/mlane

0.5 1.0 1.5 2.0 2.5

r32

mlane

mcore

0.5 1.0 1.5 2.0

r32

mlane

mcore

0.5 1.0 1.5

r32mlane

mcore

Normalized Tasks / Second / Area

viterbi radix sort kmeans dither physics sim. string search

7 Conclusions

1. The Maven vector-thread architecture is more area and energy efficient than MIMDarchitectures on regular DLP and (surprisingly) on irregular DLP

2. The Maven vector-thread architecture is a promising alternative to traditional vector-SIMDarchitectures, providing greater efficiency and easier programmability

3. Using real RTL implementations and a standard ASIC toolflow is necessary tocompare energy-optimized future architectures

For more details, see our ISCA ’11 paper below or use the QR code on the right with a barcode reader.”Exploring the Tradeoffs between Programmability and Efficiency in Data-Parallel Accelerators”

This work was supported in part by Microsoft (Award #024263) and Intel (Award #024894, equipment donations) funding and by matching funding from U.C. Discovery(Award #DIG07-10227). The authors acknowledge and thank Jiongjia Fang and Ji Kim for their help writing application kernels, Christopher Celio for his help writingMaven software and developing the vector-SIMD instruction set, and Hidetaka Aoki for his early feedback on the Maven microarchitecture.

Yunsup Lee — 577C Soda Hall, Berkeley, CA 94720 — yunsup@cs.berkeley.edu — http://www.cs.berkeley.edu/˜yunsup

top related