optimización hardware e mellora da funcionalidade de redes celulares non lineais

58
Optimización Hardware e Optimización Hardware e Mellora da Mellora da Funcionalidade de Redes Funcionalidade de Redes Celulares Non Lineais Celulares Non Lineais Autora: Natalia Abel Autora: Natalia Abel Fernández García Fernández García Directores: Victor Brea Directores: Victor Brea Sánchez Sánchez Diego Cabello Diego Cabello Ferrer Ferrer

Upload: rusk

Post on 08-Jan-2016

37 views

Category:

Documents


1 download

DESCRIPTION

Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais. Autora: Natalia Abel Fernández García Directores: Victor Brea Sánchez Diego Cabello Ferrer. Contextualización. Arquitectura base: CNN. Marco CNN. A=. I=. B=. A=. I=. B=. A=. B=. I=. Índice. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

Optimización Hardware e Mellora Optimización Hardware e Mellora da Funcionalidade de Redes da Funcionalidade de Redes

Celulares Non LineaisCelulares Non Lineais

Autora: Natalia Abel Fernández GarcíaAutora: Natalia Abel Fernández García

Directores: Victor Brea SánchezDirectores: Victor Brea Sánchez

Diego Cabello FerrerDiego Cabello Ferrer

Page 2: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

22

DESCRIPCIÓN DA APLICACIÓN •Linguaxe natural

•Especificacións Iniciais

VALIDACIÓN SOFTWARE•Linguaxes software

de alto nivel•Restricións adicionais

DESCRIPCIÓN DA ARQUITECTURA•Software específico

•Restricións específicas

DESEÑO HARDWARE

ContextualizaciContextualizaciónón

OffsetOut_A0

Out_A8

sel_ep

Out_A8

+

Out_A0

+

sel_ep

startck

sel_A(0)

start

Initial or FinalContour Image

CP

D(3

)

reset

sel_A (0)+

A_0 A_1 A_2 A_3 A_4 A_5 A_6 A_7 A_8

Out_A0 Out_A1 Out_A2 Out_A3 Out_A4 Out_A5 Out_A6 Out_A7 Out_A8

+ +

++++

+

+

+

+

+

++

+++

+

A_1 A_2 A_3 A_4 A_5 A_6 A_7 A_8

Out_A0 Out_A1 Out_A2 Out_A3 Out_A4 Out_A5 Out_A6 Out_A7 Out_A8

A_0Off

Offset

llm(3)

sd_n

ext_ l

int_l0

eng_n

eng_seng_w

eng_e

EP-IE Block

AdderCir cuit

d_out

ck_spm

col_sel

sel_A(1)

sel_A (1)+

sel_A (2)+

sel_A (3)+

out

out

eng_neigh

llm(3)CPD(3)

sd_wsd_esd_sckckpckn

vbias1vbias2

IE(3)sel_ep

X Y

LLM(1) LLM(2) LLM(3) LLM(4) SPM

+

col_sel_ep

B/W Cell

Gra

y-Sc

ale

Cel

l

InterfaceCircuitry

Page 3: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

MOTIVACIÓNMOTIVACIÓN 33

Arquitectura base: CNNArquitectura base: CNN

ijkljiNlkijklkl

jiNlkijklijij IuBtyAtxtx

dt

d

rr

),(,),(,

)()()(

ijkljiNlkijklkl

jiNlkijklij IuBnyAnx

rr

),(,),(,

)()1(

)( ijij xfy f(x)

x

+1

+1

-1

-1

+1

+1

-1

-1

f(x)

x

f(x)

x

+1

+1

-1

-1

A

B

G F

I

Y

U

x y

Cela

Page 4: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

MOTIVACIÓNMOTIVACIÓN 44

0.750.75 11 0.750.75

11 00 11

0.750.75 11 0.750.75

00A= B= I=0 0 -4-4 00

-4-4 -2-2 -4-4

00 -4-4 00

0.250.25 00 0.250.25

00 00 00

0.250.25 00 0.250.25

00A= B= I=-0.25 -0.25 00 -0.25-0.25

00 0.250.25 00

-0.25-0.25 00 -0.25-0.25

00 -0.19-0.19 00

-0.19-0.19 00 -0-19-0-19

00 -0.19-0.19 00

00A= B= I=1.51.5 -0.5-0.5 1.51.5

-0.5-0.5 -6-6 -0.5-0.5

1.51.5 -0.5-0.5 1.51.5

Marco CNNMarco CNN

Page 5: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

55

Motivación

Emulación de patróns de gran veciñanza

Redución de hardware

Conclusións e traballo futuro

ÍndiceÍndice

MotivaciónMotivación

Page 6: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 66

Dous problemas Dous problemas fundamentaisfundamentais

• Patróns de gran veciñanzaPatróns de gran veciñanza

• Requirimento de área mínimaRequirimento de área mínimaOffsetOut_A0

Out_A8

sel_ep

Out_A8

+

Out_A0

+

sel_ep

startck

sel_A(0)

start

Initial or FinalContour Image

CP

D(3

)

reset

sel_A (0)+

A_0 A_1 A_2 A_3 A_4 A_5 A_6 A_7 A_8

Out_A0 Out_A1 Out_A2 Out_A3 Out_A4 Out_A5 Out_A6 Out_A7 Out_A8

+ +

++++

+

+

+

+

+

++

+++

+

A_1 A_2 A_3 A_4 A_5 A_6 A_7 A_8

Out_A0 Out_A1 Out_A2 Out_A3 Out_A4 Out_A5 Out_A6 Out_A7 Out_A8

A_0Off

Offset

llm(3)

sd_n

ext_ l

int_l0

eng_n

eng_seng_w

eng_e

EP-IE Block

AdderCir cuit

d_out

ck_spm

col_sel

sel_A(1)

sel_A (1)+

sel_A (2)+

sel_A (3)+

out

out

eng_neigh

llm(3)CPD(3)

sd_wsd_esd_sckckpckn

vbias1vbias2

IE(3)sel_ep

X Y

LLM(1) LLM(2) LLM(3) LLM(4) SPM

+

col_sel_ep

B/W Cell

Gra

y-Sc

ale

Cel

l

InterfaceCir cuitry0,6 6,4

0,1 0,6 1,8

1,8

2,7

6,4 15,424,7

29,4

3.2

3.2

3,8

3,8

10,1

10,1

11,7

11,7

24,7

29,4 54,243,2

43,236,4

0,6 6,4

0,1 0,6 1,8

1,8

2,7

6,4 15,4

1,8

3.2 10,1

15,4

1,8

3.2

6,4

6,4

10,1

15,4 15,4

24,7

24,7

24,7

24,7

24,7

24,7

29,4

29,4

36,4

43,2

43,2

36,4 36,4

24,7

29,4

3.2

3.2

3,8

3,8

10,1

10,1

11,7

11,7

24,7

29,4 54,243,2

43,236,4

0,6 6,4

0,1 0,6 1,8

1,8

2,7

6,4 15,4

Page 7: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

77

Motivación

Emulación de patróns de gran veciñanza

Redución de hardware

Conclusións e traballo futuro

ÍndiceÍndice

Emulación de patróns de gran veciñanzaEmulación de patróns de gran veciñanza

Page 8: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

88

Solucións previasSolucións previas

Descomposición e realimentación Descomposición e realimentación

Innovación hardwareInnovación hardware

Fragmentación e desprazamentoFragmentación e desprazamento

Baseadas en mapas de polarizaciónBaseadas en mapas de polarización

Page 9: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

99

Premisas:

• DTCNN

• Función de saída cuasilineal (e estado no rango lineal)

• Procesamento de imaxes de grises

Contrapartidas:

• Aumento no número de operacións

Descomposición e RealimentaciónDescomposición e Realimentación

K. Slot (1991):

33334

333

332

331

55 ˆˆ xAUX

xxxxx AAAAAA 2

15

2

3)( 1 rrNO

Page 10: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1010

Transformacións profundas a nivel de arquitectura ou dispositivo

Innovación HardwareInnovación Hardware

POAC (Optical Programmable Array/Analogic Computer): unidade óptica de procesamento

BJT CNN (Bipolar Junction Transition): caracteríaticas físicas dos semiconductores, transporte por difusión

QCAs (Quantum Cellular Automata) : forza de Coulomb

Conexións físicas directas limitadas permitidas grazas á simplificación do hardware nos elementos de procesamento

Page 11: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1111

• Patrón B en CTCNNs

• Patróns múltiplos enteiros de 3

• Desprazamento do resultado

Fragmentación e DesprazamentoFragmentación e DesprazamentoK.R. Crounse (1997): propiedades da convolución

M.H. ter Brugge (1998): morfoloxía matemática

3)( rrNO

• DTCNNs

• Patróns múltiplos enteiros de 3

• Imaxes binarias

• Desprazamento compartidos dos sub-patróns

2)( rrNO

L. Koskinen (2004): desprazamentos hardware

Page 12: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1212

Mapas de PolarizaciónMapas de Polarización

R. Akbari-Dilmaghni (1996): suposición de correlación total entre píxeles e corrección mediante mapas de polarización

L. Kék (1998): patróns non lineais

Page 13: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1313

Metodoloxía de Metodoloxía de Fragmentación e Fragmentación e DesprazamentoDesprazamento

Page 14: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1414

Restricións:

DTCNN OU B-CTCNN

FUNCIÓN DE SAÍDA CUASILINEAL E ESTADO LIMITADO EN RANGO OU ACCESO AO ESTADO

Vantaxes:

IMPLEMENTACIÓN SIMPLE EN HW XENÉRICO

SIMPLICIDADE NA DETERMINACIÓN DAS OPERACIÓNS

Metodoloxía de Fragmentación e Metodoloxía de Fragmentación e DesprazamentoDesprazamento

Partición de patróns e acumulación de resultados parciaisPartición de patróns e acumulación de resultados parciais

Clave : PROPIEDADE ASOCIATIVA DA SUMA

Decomposición e acumulación:Decomposición e acumulación:

cdcd

dcd

c iubnyanx )()1(

cfcf

ece

dcd

fcf

ece

dcd

c iubububnyanyanyanx ......)()()()1(

Page 15: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1515

1.1. FRAGMENTAR FRAGMENTAR patróns (2r+1)x(2r+1) en patróns 3x3 (r Z+, r > 1)

Patróns DerivadosPatróns Derivados

-- PATRÓNS COMBINADOS NUN ALGORITMO DE VARIAS FASES ---- PATRÓNS COMBINADOS NUN ALGORITMO DE VARIAS FASES --

2.2. DESPRAZAR DESPRAZAR imaxes e ACUMULAR e ACUMULAR resultados parciais na cela central

Patróns de DesprazamentoPatróns de Desprazamento

Técnicas de Técnicas de Fragmentación e DesprazamentoFragmentación e Desprazamento

Natalia
Shift images because:1.- Binary hw, so we cannot shift non binary outcomes (if there are binary outcomes we can apply feedback (nxn as effect of convolution of 3x3)).2.- Not hw penalty so no extra-strange conections.
Page 16: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1616

FASE 1: FASE 1: FRAGMENTACIÓNFRAGMENTACIÓN

Agrupación espacial dos coeficientes do patróns orixinal

Orde

Regularidade

Evitar illamento de coeficientes (esquinas)

Page 17: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1717

FASE 1: FASE 1: FRAGMENTACIÓNFRAGMENTACIÓN

2

3

12)(

r

rD

Número Mínimo de Patróns Derivados

Concéntrica

Filas

Árbore de fragmentación

Page 18: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1818

13x13 => r =613x13 => r =6 => 25 D=> 25 D

FASE 1: FASE 1: FRAGMENTACIÓNFRAGMENTACIÓN

2

3

12)(

r

rD

Número Mínimo de Patróns Derivados

Page 19: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

1919

• Técnicas de imaxe fixa Desprazamento de resultados a acumular

• Técnicas de imaxe desprazada Desprazamento da imaxe antes de calcular os productos

FASE 2: DESPRAZAMENTO E FASE 2: DESPRAZAMENTO E ACUMULACIÓNACUMULACIÓN

Implicacións:

Nº de operacións de desprazamento

Aspectos circuitería (tipo de dato, número de memorias)

Técnicas de desprazamentoTécnicas de desprazamento

• Operacións CNN

• Hardware específico

Solucións de acumulaciónSolucións de acumulación

Page 20: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2020

TTÉCNICAS DE ÉCNICAS DE IIMAXE MAXE DDESPRAZADAESPRAZADA:arquitectura a nivel de sistema

P. DESP.

+Memoria

Memoria anal xica ó

Imaxe de entrada

(bin/cont) (bin/cont)

(cont)

P. DERIV.

(cont)

Page 21: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2121

ImaxeImaxe

TTÉCNICAS DE ÉCNICAS DE IIMAXE MAXE DDESPRAZADAESPRAZADA:

Patrón Patrón 13x1313x13

(25 patróns (25 patróns derivados)derivados) CNNCNN

Page 22: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2222

TTÉCNICAS DE ÉCNICAS DE IIMAXE MAXE DDESPRAZADAESPRAZADA:

Patrón Patrón 13x1313x13

(25 patróns (25 patróns derivados)derivados) CNNCNN

Page 23: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2323

TTÉCNICAS DE ÉCNICAS DE IIMAXE MAXE FixaFixa:arquitectura a nivel de sistema

+

Memoria Analóxica

(cont)

Memoria

Imaxe de entrada

(cont)

(bin/cont)

P. DESP.P. DERIV.

s1/s

(cont)

Page 24: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2424

ImaxeImaxe

Patrón Patrón 13x1313x13

(25 patróns (25 patróns derivados)derivados) CNNCNN

TTÉCNICAS DE ÉCNICAS DE IIMAXE MAXE FixaFixa

Page 25: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2525

Patrón Patrón 13x1313x13

(25 patróns (25 patróns derivados)derivados) CNNCNN

ImaxeImaxe

TTÉCNICAS DE ÉCNICAS DE IIMAXE MAXE FixaFixa

Page 26: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2626

TÉCNICAS DE DESPRAZAMENTO TÉCNICAS DE DESPRAZAMENTO E ACUMULACIÓNE ACUMULACIÓN

Técnicas de desprazamento: Técnicas de desprazamento: (de imaxe ou resultado)(de imaxe ou resultado)

Independente ou absoluto/intercalado(Fragmentación concéntrica)

Dependente ou relativo/acumulativo(Fragmentación concéntrica ou en filas)

Combinada CNN-hardware (Fragmentación en árbore)

Page 27: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2727

FASE 2: DESPRAZAMENTO E FASE 2: DESPRAZAMENTO E ACUMULACIÓNACUMULACIÓN

Independente

DependenteZigzag

DependenteConcéntrico

DependenteCentral

Page 28: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2828

0

20

40

60

80

100

0 2 4 6 8r

nº de

spraz

amen

tos

Crecemento do nº de desprazamentos coa orde de veciñanza

0

2000

4000

6000

8000

10000

12000

0 5 10 15 20 25 30 35r

des

pra

zam

ento

s

Téc. Desprazamentos Independentes Téc. Despraz. Depend. Centrais

Téc. Despraz. Depend. Zigzag "Téc. Despraz. Depend. Concéntricos"

Crecemento do nº de desprazamentos coa orde de veciñanza

0

500

1000

1500

0 5 10 15 20 25 30 35r

des

pra

zam

ento

s

"Téc. Despraz. Depend. Centrais" "Téc. Despraz. Depend. Zigzag"

"Téc. Despraz. Depend. Concéntricos"

COMPARATIVA TÉCNICAS DESPRAZAMENTO: Nº OPERACIÓNS

Page 29: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

2929

Exemplo: Difusión 5x5 Difusión 5x5((Desprazamento da imaxe))

1st Ite r. 2nd Ite r. 3 rd Ite r. 4 th Iter.

S hift

D ecom .&

A ccum .

Desp.

Aplic.e

Acu.

ª ª ªª

Page 30: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

Emulación de Patróns de Gran VeciñaEmulación de Patróns de Gran Veciñanzanza

3030

2)( rrNO

Tempos de operación CNN:

Implementación Binaria ~ 100 ns

Implementación Estándar ~ 1 µs

Tempo carga-descarga imaxe:

128x128 ~ 1ms0

200

400

600

800

1000

1200

1400

1600

1800

2000

0 5 10 15 20 25 30 35

r

Tota

l de

Ope

raci

óns

0

10

20

30

40

50

60

0 1 2 3 4 5 6

r

To

tal d

e O

per

ació

ns

0

10

20

30

40

50

60

70

80

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

r

Te

mp

o d

e e

xe

cu

ció

n (

us

)

Realimentación - Implementación estándar Fragmentación - Implementación binaria

Fragmentación - Implementación estándar Realimentación xeralizada - Implementación estándar

25 fps // 1000 ops/frame ~ 40 µs/op

IMPLICACIÓNS: OPERACIÓNS - TEMPO DE COMPUTACIÓN

~ 13000 ops/frame 9x9

~ 9000 ops/frame 11x11

0

3

6

9

12

15

18

21

1 2 3 4 5 6 7 8 9 10

r

Tem

po d

e E

xecu

ción

(us)

Page 31: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

3131

Motivación

Emulación de patróns de gran veciñanza

Redución de hardware

Conclusións e traballo futuro

ÍndiceÍndice

Redución de hardware Redución de hardware

Page 32: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

Redución de HardwareRedución de Hardware 3232

O problemaO problema

a ba b a b

a b a b a b

a b a b a b

2 PATRÓNS DE PONDERACIÓN2 PATRÓNS DE PONDERACIÓN

OffsetOut_A0

Out_A8

sel_ep

Out_A8

+

Out_A0

+

sel_ep

startck

sel_A(0)

start

Initial or FinalContour Image

CP

D(3

)

reset

sel_A (0)+

A_0 A_1 A_2 A_3 A_4 A_5 A_6 A_7 A_8

Out_A0 Out_A1 Out_A2 Out_A3 Out_A4 Out_A5 Out_A6 Out_A7 Out_A8

+ +

++++

+

+

+

+

+

++

+++

+

A_1 A_2 A_3 A_4 A_5 A_6 A_7 A_8

Out_A0 Out_A1 Out_A2 Out_A3 Out_A4 Out_A5 Out_A6 Out_A7 Out_A8

A_0Off

Offset

llm(3)

sd_n

ext_ l

int_l0

eng_n

eng_seng_w

eng_e

EP-IE Block

AdderCir cuit

d_out

ck_spm

col_sel

sel_A(1)

sel_A (1)+

sel_A (2)+

sel_A (3)+

out

out

eng_neigh

llm(3)CPD(3)

sd_wsd_esd_sckckpckn

vbias1vbias2

IE(3)sel_ep

X Y

LLM(1) LLM(2) LLM(3) LLM(4) SPM

+

col_sel_ep

B/W Cell

Gra

y-Sc

ale

Cel

l

InterfaceCir cuitry

Page 33: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

Redución de HardwareRedución de Hardware 3333

Redución do número de circuítos ponderadores

Simplificación hardware dos circuítos ponderadores

aa a

a a b a

a a a

aa a

a a a

a a a

a

Output

Input

Multiplicador 4Q Multiplicador 2Q

Input

Output

Multiplicador 1Q

Input

Output

4Q

2Q

1Q

Binario Binario 1 bit

Solucións previasSolucións previas

2 ORIENTACIÓNS PRINCIPAIS(Combinables)

Melloras mediante restricións nos niveis de deseño máis altos, incluso algorítmico

natalia
Centrerémonos na última das arquitecturas e partindo dun hardware optimizado trataremos de paliar a perda de aplicacións. Basicamente orientarémonos a recuperar a posibilidade de aplicar patróns de ampla veciñanza con veciñanza hardware mínima.
Page 34: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

Redución de HardwareRedución de Hardware 3434

a 12

a 22

a 21

a 13 a 11

a 23

a 33 a 32 a 31a 11 a 12 a 13

a 21 a 22 a 23

a 31 a 32 a 33

a 21

a 11

a 31

a 21

a 31

a 11

a 21

a 11

a 31

A nosa propostaA nosa proposta

Page 35: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 3535

““FragmentacióFragmentación e n e

DesprazamentDesprazamento”o”

TÉCNICAS CONFIGURACIÓNS

matiz:

““Fragmentación e Fragmentación e Desprazamento”Desprazamento”

Page 36: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 3636

FASE 1: FASE 1: FRAGMENTACIÓNFRAGMENTACIÓN

Agrupación espacial dos coeficientes do patróns orixinal

• Preservar as posicións relativas dos coeficientes

• Incluír todos os coeficientes unha única vez

reubicándoos nas posicións permitidas dos sub-patróns

Page 37: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 3737

FASE 1: FASE 1: FRAGMENTACIÓNFRAGMENTACIÓN

-

-

-

-

-

a13

a23

a33

-

-

-

-

-

-

a12

a22

a32

-

-

-

-

-

-

a11

a21

a31

-

a11 a12 a13

a21 a22 a23

a31 a32 a33

b

a

c

Exemplo ilustrativo

Page 38: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 3838

1

2

1

a21

a11

a31

a12

a22

a32

a13

a23

a33

1(1)

-

-

-

-

- -

-

-

-

--

-

-

-

-

2(1)

- - -

1

2

1

a21

a11

a31

a12

a22

a32

a13

a23

a33

2(1)-

-

-

-

- -

-

-

-

- -

-

-

-

-

1(1)

a13

a23

a33

a12

a22

a32

a11

a21

a31

- - -

DESPRAZAMENTO DESPRAZAMENTO DE IMAXEDE IMAXE

DESPRAZAMENTO DESPRAZAMENTO DE RESULTADODE RESULTADO

COMPARTIR DESPRAZAMENTOS

FASE 2: DESPRAZAMENTO E FASE 2: DESPRAZAMENTO E ACUMULACIÓNACUMULACIÓN

DESPRAZAMENTO DESPRAZAMENTO DE RESULTADODE RESULTADO

Exemplo ilustrativo

Page 39: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 3939

a21

a11

a31

a21

a31

a11

a21

a11

a31 -

- -

- -

-

a23

a21

a31

a11

a23

a11

a31 -

-

- -

-

a21

Os desprazamentos impoñen restricións no número mínimo de coeficientes e na colocación deles.

Excepción: realización hardware (switch) dos desprazamentos

Desprazamentos: Desprazamentos: Configuracións ProibidasConfiguracións Proibidas

FASE 2: DESPRAZAMENTO E FASE 2: DESPRAZAMENTO E ACUMULACIÓNACUMULACIÓN

Page 40: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4040

N úm ero de O peracións(D e rivad as + D esp razam en tos)

N úm ero de C ircuítos de P onderación

9876 54 321

12 + 12 + 12 + 1 3 + 23 + 2 5 + 5

COMPROMISO: ÁREA-TEMPO DE COMPUTACIÓN

Elección da configuración

Page 41: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4141

Definición de RPO (porcentaxe de Redución de hardware

Por Operación incrementada por operación orixinal):

RPO(nc) =RH(nc) · 100

FIO(nc) − 1

0/016.6713.897.41

RPO (%)nc

135

10

96 4 3

RH FIO

01/35/92/3

COMPROMISO: ÁREA-TEMPO DE COMPUTACIÓN

Elección da configuración

RPO vs Restricións do deseño

Para comparar as configuracións seleccionadas definimos o RPO
Page 42: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4242

Dúas posibilidades:

• A e B con hardware e redución independente

• A e B con compartición de hardware

Patróns derivados secuenciais simultáneos

Desprazamentos compartidos para Y=U ou desprazamento de resultado

Patróns derivados simultáneos

Desprazamentos compartidos para Y=U ou desprazamento de resultado (=> conserva valor RPO dos patróns independentes)

Aplicación a Operacións CNN con dous patróns de ponderación ( A e

B)

Para comparar as configuracións seleccionadas definimos o RPO
Page 43: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4343

0/016.6713.897.41

R P O (% )n c

135

10

96 4 3

R HF IO

h w in de p . e de sp r. co m p .A & B

01/35/92/3

5016.6711 .115 .95

n c

5013.138 .644 .39

96 4 3

R P O (% ) in de p en d en te

A & B h a rd w are

R P O (% ) A & B h a rdw a re e d e sp raz . co m p artido

0 /011 .119 .264 .76

R P O (% ) A & B h a rd w are co m p artid o

Operacións CNN con dous patróns de ponderación ( A e B)

COMPROMISO: ÁREA-TEMPO DE COMPUTACIÓN

Para comparar as configuracións seleccionadas definimos o RPO
Page 44: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4444

Aplicación a Aplicación a algoritmos algoritmos complexoscomplexos

• Restricións da arquitectura de partida

• Marxe temporal e restricións de área

• Seccións críticas

• Tipos de operacións (formas dos patróns, combinacións de dous patróns)

En casos particulares podemos acadar RPOs infinitos (>100%) coa configuración adecuada

Page 45: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4545

Algoritmos Algoritmos

complexos:complexos:““Pixel Level Snakes” Pixel Level Snakes” (PLS)(PLS)

Implementación de partida:Implementación de partida: 1Q1bit Binario 1Q1bit Binario

Page 46: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4646

G/SG/S

B/WB/W

Algoritmo PLS

Page 47: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4747

Algoritmos complexos:Algoritmos complexos:“Pixel Level Snakes (PLS)-1Q1bit “Pixel Level Snakes (PLS)-1Q1bit

Binario”Binario”Restricións da arquitectura de partida (tecnoloxía 0.18u):Restricións da arquitectura de partida (tecnoloxía 0.18u):

Imaxes binarias Desprazamento de imaxe

10 coeficientes de partida

6 memorias lóxicas Precisamos 1 memoria analóxica mín

~50 us de carga da imaxe (asumimos fotosensores)

~100 ns por operación CNN (incluída carga do patrón)

~1 ms para descargar a imaxe saída (B/N 128x128)

Page 48: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4848

Algoritmos complexos:Algoritmos complexos:“Pixel Level Snakes (PLS)-1Q1bit “Pixel Level Snakes (PLS)-1Q1bit

Binario”Binario”Marxe temporal (128x128):Marxe temporal (128x128):

25 fps => 40ms/f

10 iteracións

~1 ms para carga e descarga

100 ns por operación CNN

Ata 39 000 ops. por iteración

Ata 35 novas operacións por operación orixinal (FIO)

Nota: Nota: peor caso 1 patrón, FIO=10 / 2 patróns, FIO=20peor caso 1 patrón, FIO=10 / 2 patróns, FIO=20

Peor caso PLS (HF=64ops) = 1112 ops CNN/iter.

Page 49: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 4949

Algoritmos complexos:Algoritmos complexos:“Pixel Level Snakes (PLS)-1Q1bit “Pixel Level Snakes (PLS)-1Q1bit

Binario”Binario”Diagrama de fluxo: seccións críticasDiagrama de fluxo: seccións críticas

Page 50: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 5050

Algoritmos complexos:Algoritmos complexos:“Pixel Level Snakes (PLS)-1Q1bit “Pixel Level Snakes (PLS)-1Q1bit

Binario”Binario”Tipos de Operacións/PatrónsTipos de Operacións/Patróns

T1: A= 0

0

1

0

0

0

0

0

0

B= 1

0

0

0

0

0

0

0

0

OR/AND: A= B= 1

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

T4= 1

0

0

0

0

1

0

0

0

T5= 1

0

0

1

0

0

0

0

0

T2= 1

0

1

0

0

0

0

0

0

T3= 1

1

0

0

0

0

0

0

0

T10= 0

1

1

1

1

1

1

1

1

T8= 0

1

1

1

0

0

1

0

0

T6= 1

0

0

0

0

0

0

0

1

T7= 1

0

0

0

0

0

1

0

0

T9= 1

1

1

1

0

0

1

0

0

Page 51: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 5151

Algoritmos complexos:Algoritmos complexos:“Pixel Level Snakes (PLS)-1Q1bit “Pixel Level Snakes (PLS)-1Q1bit

Binario”Binario”

Elección conservadora: configuración 5+1

B

A

Só 3 ops. emuladas

RH = 40%

FIO = 1,022 (2,2%)

RPO = “1.118,2 %”

Page 52: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 5252

G/SG/S

B/WB/W

Algoritmo PLS: gran veciñanza

Page 53: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 5353

Algoritmos Algoritmos

complexos:complexos:Gran veciñanzaGran veciñanza

• Non partir da descomposición en 3x3: “re-descompoñer”

• Desprazamento zigzag (menor número de direccións e fácil de

combinar LN e RH)

Page 54: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

20/04/2320/04/23 Redución de HardwareRedución de Hardware 5454

Algoritmos complexos:Algoritmos complexos:“Pixel Level Snakes” (PLS)“Pixel Level Snakes” (PLS)

1Q1bit Binario – Gran veciñanza1Q1bit Binario – Gran veciñanza

Por consistencia: configuración 5+1

A

B1 1 1 1 1 1 1 11

1 1 1 1 1 1 1 11

1 1 1 1 1 1 1 11

1 1 1 1 1 1 1 11

1 1 1 1 1 1 1 11

1 1 1 1 1 1 1 11

1 1 1 1 1 1 1 11

1 1 1 1 1 1 1 11

1 1 1 1 1 1 1 11

RH = 40%

FIO (LN) = 2

RPO (LN) = 40 %

RH = 40%

FIO (PLS) = 1,223

RPO (PLS) = “180%”

Page 55: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

Redución de HardwareRedución de Hardware 5555

Implicacións Implicacións hardwarehardware

Area vs tempo de procesamento:

entre DTCNN e SIMD clásica (tipo bit-slice) reducción número de coeficientes e conexións incremento no uso de memoria

Necesidade de memoria analóxica (mínimo 1) sempre incremento do número de accesos á memoria global de patróns, con elevado

fan-out

Desapareamento, precisión e consumo de potencia:

menor área => posibilidade de aumentar tamaño dispositivos => minimización do desapareamento => maior precisión => diminúe límite mínimo de disipación de potencia menor número de coeficientes en execución => agardamos menor consumo

por ciclo de reloxo

natalia
Centrerémonos na última das arquitecturas e partindo dun hardware optimizado trataremos de paliar a perda de aplicacións. Basicamente orientarémonos a recuperar a posibilidade de aplicar patróns de ampla veciñanza con veciñanza hardware mínima.
Page 56: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

5656

Motivación

Emulación de patróns de gran veciñanza

Redución de hardware

Conclusións e traballo futuro

ÍndiceÍndice

Conclusións e traballo futuroConclusións e traballo futuro

Page 57: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

5757

Conclusións Conclusións e traballo futuroe traballo futuro

Mellora da funcionalidade CNN: emulación de patróns de grande veciñanza

Revisión de técnicas Metodoloxía de Fragmentación e Desprazamento Implicacións: tempo de procesamento

Mellora na implementación hardware CNN: redución da área

Revisión de técnicas Adaptación da metodoloxía de Fragmentación e

Desprazamento Introdución de medida de rendemento RPO Implicacións temporais e hardware

Aplicouse a metodoloxía a un caso complexo e déronse datos do compromiso área-tempo de procesamento

A implementación física das propostas realizadas será o seguinte paso na verificación das mesmas e na

determinación das verdadeiras vantaxes achegadas.

Page 58: Optimización Hardware e Mellora da Funcionalidade de Redes Celulares Non Lineais

Optimización Hardware e Mellora Optimización Hardware e Mellora da Funcionalidade de Redes da Funcionalidade de Redes

Celulares Non LineaisCelulares Non Lineais

Autora: Natalia Abel Fernández GarcíaAutora: Natalia Abel Fernández García

Directores: Victor Brea SánchezDirectores: Victor Brea Sánchez

Diego Cabello FerrerDiego Cabello Ferrer