Title: Optimizaci
1Optimizació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
2Contextualización
3Arquitectura base CNN
4Marco CNN
0.75 1 0.75
1 0 1
0.75 1 0.75
0 -4 0
-4 -2 -4
0 -4 0
A
B
I
0
0.25 0 0.25
0 0 0
0.25 0 0.25
-0.25 0 -0.25
0 0.25 0
-0.25 0 -0.25
A
I
B
0
0 -0.19 0
-0.19 0 -0-19
0 -0.19 0
1.5 -0.5 1.5
-0.5 -6 -0.5
1.5 -0.5 1.5
A
B
I
0
5Índice
- Motivación
- Emulación de patróns de gran veciñanza
- Redución de hardware
- Conclusións e traballo futuro
Motivación
6Dous problemas fundamentais
- Patróns de gran veciñanza
- Requirimento de área mínima
7Índice
- Motivación
- Emulación de patróns de gran veciñanza
- Redución de hardware
- Conclusións e traballo futuro
Emulación de patróns de gran veciñanza
8Solucións previas
- Descomposición e realimentación
- Innovación hardware
- Fragmentación e desprazamento
- Baseadas en mapas de polarización
9Descomposición e Realimentación
K. Slot (1991)
- 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
10Innovación Hardware
Transformacións profundas a nivel de arquitectura
ou dispositivo
Conexións físicas directas limitadas permitidas
grazas á simplificación do hardware nos elementos
de procesamento
11Fragmentación e Desprazamento
K.R. Crounse (1997) propiedades da convolución
- Patrón B en CTCNNs
- Patróns múltiplos enteiros de 3
- Desprazamento do resultado
M.H. ter Brugge (1998) morfoloxía matemática
- DTCNNs
- Patróns múltiplos enteiros de 3
- Imaxes binarias
- Desprazamento compartidos dos sub-patróns
L. Koskinen (2004) desprazamentos hardware
12Mapas 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
13Metodoloxía de Fragmentación e Desprazamento
14Metodoloxía de Fragmentación e Desprazamento
Clave PROPIEDADE ASOCIATIVA DA SUMA
Vantaxes IMPLEMENTACIÓN SIMPLE EN HW
XENÉRICO SIMPLICIDADE NA DETERMINACIÓN DAS
OPERACIÓNS
Decomposición e acumulación
Restricións DTCNN OU B-CTCNN FUNCIÓN
DE SAÍDA CUASILINEAL E ESTADO LIMITADO EN RANGO
OU ACCESO AO ESTADO
15Técnicas de Fragmentación e Desprazamento
-- PATRÓNS COMBINADOS NUN ALGORITMO DE VARIAS
FASES --
16FASE 1 FRAGMENTACIÓN
Agrupación espacial dos coeficientes do patróns
orixinal
Orde Regularidade Evitar illamento de
coeficientes (esquinas)
17FASE 1 FRAGMENTACIÓN
Árbore de fragmentación
Filas
Concéntrica
18FASE 1 FRAGMENTACIÓN
13x13 gt r 6
gt 25 D
19FASE 2 DESPRAZAMENTO E ACUMULACIÓN
Técnicas de desprazamento
Solucións de acumulación
- Operacións CNN
- Hardware específico
Implicacións Nº de operacións de
desprazamento Aspectos circuitería (tipo de
dato, número de memorias)
20TÉCNICAS DE IMAXE DESPRAZADA arquitectura a
nivel de sistema
21TÉCNICAS DE IMAXE DESPRAZADA
Patrón 13x13 (25 patróns derivados)
CNN
22TÉCNICAS DE IMAXE DESPRAZADA
Patrón 13x13 (25 patróns derivados)
CNN
23TÉCNICAS DE IMAXE Fixa arquitectura a nivel de
sistema
24TÉCNICAS DE IMAXE Fixa
Patrón 13x13 (25 patróns derivados)
CNN
25TÉCNICAS DE IMAXE Fixa
Patrón 13x13 (25 patróns derivados)
CNN
26TÉCNICAS DE DESPRAZAMENTO E ACUMULACIÓN
Técnicas de desprazamento (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)
27FASE 2 DESPRAZAMENTO E ACUMULACIÓN
Independente
Dependente Central
Dependente Concéntrico
Dependente Zigzag
28COMPARATIVA TÉCNICAS DESPRAZAMENTO Nº
OPERACIÓNS
29Exemplo Difusión 5x5 (Desprazamento da imaxe)
Desp.
Aplic. e Acu.
ª
ª
ª
ª
30IMPLICACIÓNS OPERACIÓNS - TEMPO DE COMPUTACIÓN
Tempos de operación CNN Implementación Binaria
100 ns Implementación Estándar 1
µs Tempo carga-descarga imaxe 128x128
1ms
13000 ops/frame 9x9 9000 ops/frame 11x11
31Índice
- Motivación
- Emulación de patróns de gran veciñanza
- Redución de hardware
- Conclusións e traballo futuro
Redución de hardware
32O problema
2 PATRÓNS DE PONDERACIÓN
33Solucións previas
2 ORIENTACIÓNS PRINCIPAIS (Combinables)
Redución do número de circuítos ponderadores
Simplificación hardware dos circuítos ponderadores
Melloras mediante restricións nos niveis de
deseño máis altos, incluso algorítmico
34A nosa proposta
35Fragmentación e Desprazamento
Fragmentación e Desprazamento
matiz
TÉCNICAS
CONFIGURACIÓNS
36FASE 1 FRAGMENTACIÓN
Agrupación espacial dos coeficientes do patróns
orixinal
reubicándoos nas posicións permitidas dos
sub-patróns
- Preservar as posicións relativas dos
coeficientes - Incluír todos os coeficientes unha única vez
37FASE 1 FRAGMENTACIÓN
Exemplo ilustrativo
38FASE 2 DESPRAZAMENTO E ACUMULACIÓN
Exemplo ilustrativo
DESPRAZAMENTO DE RESULTADO
DESPRAZAMENTO DE IMAXE
DESPRAZAMENTO DE RESULTADO
COMPARTIR DESPRAZAMENTOS
39FASE 2 DESPRAZAMENTO E ACUMULACIÓN
Desprazamentos Configuracións Proibidas
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
40Elección da configuración
COMPROMISO ÁREA-TEMPO DE COMPUTACIÓN
41Elección da configuración
COMPROMISO ÁREA-TEMPO DE COMPUTACIÓN
Definición de RPO (porcentaxe de Redución de
hardware Por Operación incrementada por operación
orixinal)
RPO vs Restricións do deseño
42Aplicación a Operacións CNN con dous patróns de
ponderación ( A e B)
- Dúas posibilidades
- A e B con hardware e redución independente
- A e B con compartición
- de hardware
- Patróns derivados simultáneos
- Desprazamentos compartidos para YU ou
desprazamento de resultado (gt conserva valor RPO
dos patróns independentes)
- Patróns derivados secuenciais simultáneos
- Desprazamentos compartidos para YU ou
desprazamento de resultado
43Operacións CNN con dous patróns de ponderación (
A e B)
COMPROMISO ÁREA-TEMPO DE COMPUTACIÓN
44Aplicación a algoritmos complexos
- 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 (gt100) coa configuración adecuada
45Algoritmos complexos
Pixel Level Snakes (PLS)
Implementación de partida 1Q1bit Binario
46Algoritmo PLS
G/S
B/W
47Algoritmos complexosPixel Level Snakes
(PLS)-1Q1bit Binario
Restricións da arquitectura de partida
(tecnoloxía 0.18u)
48Algoritmos complexosPixel Level Snakes
(PLS)-1Q1bit Binario
Marxe temporal (128x128)
25 fps gt 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)
Peor caso PLS (HF64ops) 1112 ops CNN/iter.
Nota peor caso 1 patrón, FIO10 / 2 patróns,
FIO20
49Algoritmos complexosPixel Level Snakes
(PLS)-1Q1bit Binario
Diagrama de fluxo seccións críticas
50Algoritmos complexosPixel Level Snakes
(PLS)-1Q1bit Binario
Tipos de Operacións/Patróns
51Algoritmos complexosPixel Level Snakes
(PLS)-1Q1bit Binario
Elección conservadora configuración 51
Só 3 ops. emuladas RH 40 FIO 1,022
(2,2) RPO 1.118,2
52Algoritmo PLS gran veciñanza
G/S
B/W
53Algoritmos complexosGran 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)
54Algoritmos complexosPixel Level Snakes
(PLS)1Q1bit Binario Gran veciñanza
A B
Por consistencia configuración 51
RH 40 FIO (LN) 2 RPO (LN) 40
RH 40 FIO (PLS) 1,223 RPO (PLS) 180
55Implicacións hardware
- 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 gt posibilidade de aumentar tamaño
dispositivos gt - minimización do desapareamento gt maior
precisión gt diminúe límite mínimo - de disipación de potencia
- menor número de coeficientes en execución gt
agardamos menor consumo por ciclo de reloxo
56Índice
- Motivación
- Emulación de patróns de gran veciñanza
- Redución de hardware
- Conclusións e traballo futuro
Conclusións e traballo futuro
57Conclusións e 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.
58Optimizació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