Presentation is loading. Please wait.

Presentation is loading. Please wait.

SystemC-AMS(CUDA) Ruru 2012 8/14. Outline Introduction Modeling Formalisms ELN(Electrical Linear Networks) Solve Ordinary Differential Equation Solve.

Similar presentations


Presentation on theme: "SystemC-AMS(CUDA) Ruru 2012 8/14. Outline Introduction Modeling Formalisms ELN(Electrical Linear Networks) Solve Ordinary Differential Equation Solve."— Presentation transcript:

1 SystemC-AMS(CUDA) Ruru 2012 8/14

2 Outline Introduction Modeling Formalisms ELN(Electrical Linear Networks) Solve Ordinary Differential Equation Solve Eln-Cluster Workflow SystemC Kernel Solver Performance

3 Introduction Positioning SystemC AMS Extensions

4

5 Introduction Modeling formalisms and use cases

6

7 Modeling Formalisms

8 Electrical Linear Networks ELN

9 Setup of the equation system Kirchhoff’s current law(KCL)

10 Electrical Linear Networks ELN elaboration and simulation phases

11 Problem : Thermo Model Thermo Model : RLC model Solve ELN equation Purpose Using CUDA to Speedup

12 Solve Ordinary Differential Equation Euler’s Method Backward Euler Method

13 SystemC Kernel Solver Eln-cluster Initialization Module(r, l, c …) : modules Node(sca_terminal, sca_node …) : equations Sparse Matrix Spcode

14 Solve Eln-Cluster Workflow Solve Differential Equation ana_solv DATA (Sdata, R, X) Next Cluster Next Timestamp Cluster? Timestamp? …

15 Modify ana_solv to GPU Every eln-cluster Every time stamp Workflow Copy matrix data to GPU Execute ana_solv by GPU Copy result data to host ana_solv DATA (Sdata, R, X) GPU ana_solv DATA (Sdata, R, X)

16 Solve Eln-Cluster Workflow Solve Differential Equation ana_solv DATA (Sdata, R, X) Next Cluster Next Timestamp Cluster? Timestamp? … GPU ana_solv DATA (Sdata, R, X)

17 Performance The result is correct No speed up 200 module of one cluster : 75 ms (CPU) 200 module of one cluster : 165 ms (GPU)

18 Thanks for Your Attention!

19 Euler’s Method Question : y’ = f(x, y), x0 < x < b, y(x0) = y0, h is constant xi = x0 + i*h ; (i = 0 1 2 ….) yi = y(xi) ~ Yi (Yi is result) yn+1 = yn + h*f(yn, xn) Example : y’ = y, y(0) = 1, h = 0.5 Solve : y1 = y(0) + y’(0)*h = 1 + 1*0.5 = 1.5 y2 = … Yi = exp(x) => Y(0.5) = 1.649… 1.5 vs 1.649

20 Backward Euler Method Question : y’ = f(x, y), x0 < x < b, y(x0) = y0, h is constant xi = x0 + i*h ; (i = 0 1 2 ….) yi = y(xi) ~ Yi (Yi is result) yn+1 = yn + h*f(yn, xn) Example : y’ = -y^3, y(0) = 1, h = 0.5 Solve : y1 = y(0) + f(x1, y1)*h = 1 - 0.5*y1^3 First => y1 = y(0) + f(x0, y0)*h = 1-0.5*y0^3 = 0.5 Then recursive… y1 = 0.9375 => 0.588 => 0.898 … => 0.7709


Download ppt "SystemC-AMS(CUDA) Ruru 2012 8/14. Outline Introduction Modeling Formalisms ELN(Electrical Linear Networks) Solve Ordinary Differential Equation Solve."

Similar presentations


Ads by Google