Presentation is loading. Please wait.

Presentation is loading. Please wait.

M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 1/25 SDF: Parameterized & Interfaced Synchronous Dataflow for MPSoCs.

Similar presentations


Presentation on theme: "M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 1/25 SDF: Parameterized & Interfaced Synchronous Dataflow for MPSoCs."— Presentation transcript:

1 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 1/25 SDF: Parameterized & Interfaced Synchronous Dataflow for MPSoCs Runtime Reconfiguration Karol DESNOS, Julien HEULOT IETR, Rennes, France M ETODO Workshop - Madrid, October 07 th 2014

2 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 2/25 Introduction Software complexity Lines of code/chip x2 every 10 months Software productivity Lines of code/day x2 every 5 years Hardware complexity Transistors/chip x2 every 18 months Software Productivity Gap Source: ITRS & Hardware-dependent Software, Ecker et al., Springer Motivations 199019952000200520102015 log

3 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 3/25 PiMM: Parameterized and Interfaced dataflow Meta-Model

4 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 4/25 PiMM SDF Features: Parallelisms Predictable Developer-friendly Limited Expressivity PiMM Features: -More Expressive -Hierarchical & Compositional -Statically Parameterizable -Dynamically Reconfigurable Dataflow Model + PiMM elements of semantics A src snk P A P = (Dataflow Model) 1 ACB 443 44 x2 AB 13Size h x2*Size Size B Size/N in out SetN N Size back feed Size Parameterized and Interfaced dataflow Meta-Model (PiMM) K. Desnos, M. Pelcat, J.-F. Nezan, S.S. Bhattacharyya, S. Aridhi. “PiMM: Parameterized and interfaced dataflow Meta-Model for mpsocs runtime reconfiguration” SAMOS13

5 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 5/25 N PiMM Read Config Size 4 Read Image Filter /NSize out Size in Size SetNb Slices Size Kernel /NSize 4 Send

6 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 6/25 N PiMM Read Config Size =4 4Size Read Image Filter /NSize out Size in Size SetNb Slices =2 Size Kernel /NSize 4 Send =2

7 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 7/25 PiMM: A Meta-Model in out + N 1 x1 1 1 1 N + + + + + + + + + + + Σ N1 N + N 2 1 in out Join {N, N/2, N/4, …, 2, 0} {N, 0, …, 0} {0, N/2, N/4, …, 2, 0} {0, …, 0, 1} N

8 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 8/25 PiMM Predictability The more dynamism, the less predictability B 13 A 2 C 2 SDF DPN ACB B 1 A 2 C 2 Set_p p Compile Time After Configuration After execution Source: S. Neuendorffer and E. Lee, “Hierarchical reconfiguration of dataflow models” in MEMOCODE, 2004. =3 p

9 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 9/25 S PIDER : Synchronous Parameterized and Interfaced Dataflow Embedded Runtime

10 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 10/25 Existing Objective: improving multicore programming productivity S PIDER Proposition

11 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 11/25 S PIDER S PIDER Principle Jobs ParamsTimingsData Pool of data F IFO s Master tasks: -Run jobs -Map & Schedule -Manage graphs -Monitor & Trace Slave task: -Run jobs Slave Master

12 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 12/25 S PIDER : a Step-by-Step Example Actor States Execution Gantt Core 1 Core 2 Actor Not schedulable Actor Schedulable Actor Executable Actor Executed

13 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 13/25 S PIDER : a Step-by-Step Example Current Graph Read Config 4Size Read Image Filter Size4 Send Schedulable Not schedulable Execution Gantt Core 1 Master S PIDER Core 2 Read Config Size

14 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 14/25 Current Graph Read Config Size 4 Size Read Image Filter Size 4 Send Executable Not schedulable Execution Gantt Core 1 Master S PIDER Core 2 Read Config =2 S PIDER : a Step-by-Step Example

15 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 15/25 Current Graph Read Config 42 Read Image Filter 24 Send Size=2 Schedulable X1 Schedulable X2 Schedulable X1 Executed Execution Gantt Core 1 Master S PIDER Core 2 Read Config Master S PIDER Read Image S PIDER : a Step-by-Step Example

16 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 16/25 Current Graph Read Config 42 Read Image Filter 1 24 Send 2 Filter 2 2 Size=2 Executable Schedulable Executed Execution Gantt Core 1 Master S PIDER Core 2 Read Config Master S PIDER Read Image S PIDER : a Step-by-Step Example

17 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 17/25 Current Graph Read Config 42 Read Image 24 Send Size=2 N1N1 /N2 out in 2 SetNb Slices 1 2 Kernel 1 /N 22 22 N2N2 2 out in 2 SetNb Slices 2 2 Kernel 2 /N 22 Executable Schedulable Executed Schedulable Not schedulable Execution Gantt Core 1 Master S PIDER Core 2 Read Config Master S PIDER Read Image SetNb Slices 2 SetNb Slices 1 Filter 1 Filter 2 S PIDER : a Step-by-Step Example

18 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 18/25 Current Graph Read Config 42 Read Image 24 Send Size=2 N1N1 /N2 out in 2 SetNb Slices 1 2 Kernel 1 /N 22 22 N2N2 2 out in 2 SetNb Slices 2 2 Kernel 2 /N 22 Executed Schedulable Executed Executable Not schedulable Execution Gantt Core 1 Master S PIDER Core 2 Read Config Master S PIDER Read Image SetNb Slices 2 SetNb Slices 1 Filter 1 Filter 2 S PIDER : a Step-by-Step Example

19 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 19/25 Current Graph Read Config 42 Read Image 24 Send Size=2 N 1 =1 2 out in 2 SetNb Slices 1 2 Kernel 1 22 22 N 2 =2 1 out in 2 SetNb Slices 2 2 Kernel 2 21 Executed Schedulable Executed Schedulable X1 Schedulable X2 Execution Gantt Core 1 Master S PIDER Core 2 Read Config Master S PIDER Read Image SetNb Slices 2 SetNb Slices 1 Master S PIDER Kernel 1 Filter 1 Filter 2 S PIDER : a Step-by-Step Example

20 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 20/25 Current Graph Read Config 42 Read Image 24 Send Size=2 N 1 =1 2 out in 2 SetNb Slices 1 2 Kernel 1 22 22 N 2 =2 1 out in 2 SetNb Slices 2 2 Kernel 2-1 21 Executed Executable Schedulable 1 Kernel 2-2 1 Schedulable Execution Gantt Core 1 Master S PIDER Core 2 Read Config Master S PIDER Read Image SetNb Slices 2 SetNb Slices 1 Master S PIDER Kernel 1 Ker -nel 2-2 Ker -nel 2-1 Send Schedulable Filter 1 Filter 2 S PIDER : a Step-by-Step Example

21 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 21/25 Current Graph Read Config 42 Read Image 24 Send Size=2 N 1 =1 2 out in 2 SetNb Slices 1 2 Kernel 1 22 22 N 2 =2 1 out in 2 SetNb Slices 2 2 Kernel 2-1 21 Executed Scheduled Executed Executable 1 Kernel 2-2 1 Executable Execution Gantt Core 1 Master S PIDER Core 2 Read Config Master S PIDER Read Image SetNb Slices 2 SetNb Slices 1 Master S PIDER Kernel 1 Ker -nel 2-2 Ker -nel 2-1 Send Filter 1 Filter 2 S PIDER : a Step-by-Step Example

22 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 22/25 Current Graph Read Config 42 Read Image 24 Send Size=2 N 1 =1 2 out in 2 SetNb Slices 1 2 Kernel 1 22 22 N 2 =2 1 out in 2 SetNb Slices 2 2 Kernel 2-1 21 Executed Executable Executed 1 Kernel 2-2 1 Executed Execution Gantt Core 1 Master S PIDER Core 2 Read Config Master S PIDER Read Image SetNb Slices 2 SetNb Slices 1 Master S PIDER Kernel 1 Ker -nel 2-2 Ker -nel 2-1 Send Filter 1 Filter 2 S PIDER : a Step-by-Step Example

23 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 23/25 Current Graph Read Config 42 Read Image 24 Send Size=2 N 1 =1 2 out in 2 SetNb Slices 1 2 Kernel 1 22 22 N 2 =2 1 out in 2 SetNb Slices 2 2 Kernel 2-1 21 Executed 1 Kernel 2-2 1 Executed Execution Gantt Core 1 Master S PIDER Core 2 Read Config Master S PIDER Read Image SetNb Slices 2 SetNb Slices 1 Master S PIDER Kernel 1 Ker -nel 2-2 Ker -nel 2-1 Send Filter 1 Filter 2 S PIDER : a Step-by-Step Example

24 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 24/25 About S PIDER S PIDER Implementation Linux and Bare metal Architectures Keystone 1 & 2 from Texas Instruments Comparison with OpenMP Better performance for asymmetric parallel work J. Heulot, M. Pelcat, K. Desnos, J.-F. Nezan, and S. Aridhi “SPIDER: A Synchronous Parameterized and Interfaced Dataflow-Based RTOS for Multicore DSPs” [E DERC 14]

25 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 25/25 Future Work http://preesm.sf.net@PreesmProject

26 M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 26/25 Questions ? http://preesm.sf.net@PreesmProject


Download ppt "M ETODO – Oct. 7 th 2014 INSTITUT D’ÉLECTRONIQUE ET DE TÉLÉCOMMUNICATIONS DE RENNES 1/25 SDF: Parameterized & Interfaced Synchronous Dataflow for MPSoCs."

Similar presentations


Ads by Google