Multi Core and Many Core vs Data Flow

  • Slides: 19
Download presentation
Multi. Core and Many. Core vs Data. Flow or Control. Flow vs Data. Flow

Multi. Core and Many. Core vs Data. Flow or Control. Flow vs Data. Flow Veljko Milutinović vm@etf. rs Saša Stojanović stojsasa@etf. rs University of Belgrade 1

Multi. Core Dual. Core? Where are the horses going? 2

Multi. Core Dual. Core? Where are the horses going? 2

Many. Core Is it possible to use 2000 chicken instead of two horses? ?

Many. Core Is it possible to use 2000 chicken instead of two horses? ? == 3

Many. Core 2 x 1000 chickens 4

Many. Core 2 x 1000 chickens 4

a Data. Flow How about 2 000 ants? 5

a Data. Flow How about 2 000 ants? 5

Data. Flow Big Data Input Results Marmalade 6

Data. Flow Big Data Input Results Marmalade 6

Why is Data. Flow so Much Faster? Factor: 20 to 200 Multi. Core/Many. Core

Why is Data. Flow so Much Faster? Factor: 20 to 200 Multi. Core/Many. Core Data. Flow Machine Level Code Gate Transfer Level 7

Why are Electricity Bills so Small? Factor: 20 Multi. Core/Many. Core Data. Flow P

Why are Electricity Bills so Small? Factor: 20 Multi. Core/Many. Core Data. Flow P = C*U 2*f 8

Why is the Cubic Foot so Small? Factor: 20 Multi. Core/Many. Core 1 20

Why is the Cubic Foot so Small? Factor: 20 Multi. Core/Many. Core 1 20 Data. Flow Data Processing 20 Data Processing 1 Process Control 9

Required Programming Effort? Multi. Core: Explain what to do, to the driver Caches, instruction

Required Programming Effort? Multi. Core: Explain what to do, to the driver Caches, instruction buffers, and predictors needed Many. Core: Explain what to do, to many sub-drivers Reduced caches and instruction buffers needed Data. Flow: No caches, instruction buffers, or predictors needed: Cmin Make a field of processing gates: +5 Java programs 10

Required Debug Effort? Multi. Core: Business as usual Many. Core: More difficult Data. Flow:

Required Debug Effort? Multi. Core: Business as usual Many. Core: More difficult Data. Flow: Much more difficult Debugging both, application and configuration code: 5 Java + Cmin 11

Required Compilation Effort? Multi. Core/Many. Core: Several minutes Data. Flow: Several hours (to configure

Required Compilation Effort? Multi. Core/Many. Core: Several minutes Data. Flow: Several hours (to configure the FPGA structures) Future: Xilinx, Altera, Achronix (UCB 1 GHz), Tabula (MIT, 1. 6 GHz) 12

Now the Fun Part 13

Now the Fun Part 13

Required Space? Multi. Core: Horse stable Many. Core: Chicken house Data. Flow: Ant hole

Required Space? Multi. Core: Horse stable Many. Core: Chicken house Data. Flow: Ant hole 14

Required Energy? Multi. Core: Haystack Many. Core: Cornbits Data. Flow: Crumbs 15

Required Energy? Multi. Core: Haystack Many. Core: Cornbits Data. Flow: Crumbs 15

Why Faster? Small Data 16

Why Faster? Small Data 16

Why Faster? Medium Data 17

Why Faster? Medium Data 17

Why Faster? Big Data 18

Why Faster? Big Data 18

Q&A = ? 19

Q&A = ? 19