1 / 20

SystemC -AMS(CUDA)

SystemC -AMS(CUDA). Ruru 2012 8/14. Outline. Introduction Modeling Formalisms ELN(Electrical Linear Networks ) Solve Ordinary Differential Equation Solve Eln -Cluster Workflow SystemC Kernel Solver Performance. Introduction. Positioning SystemC AMS Extensions. Introduction.

Télécharger la présentation

SystemC -AMS(CUDA)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SystemC-AMS(CUDA) Ruru2012 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. Introduction • Modeling formalisms and use cases

  5. Modeling Formalisms

  6. Electrical Linear Networks • ELN

  7. Electrical Linear Networks • Setup of the equation system Kirchhoff’s current law(KCL)

  8. Electrical Linear Networks • ELN elaboration and simulation phases

  9. Problem : Thermo Model • Thermo Model : • RLC model • Solve ELN equation • Purpose • Using CUDA to Speedup

  10. Solve Ordinary Differential Equation • Euler’s Method • Backward Euler Method

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

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

  13. 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)

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

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

  16. Thanks for Your Attention!

  17. 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 vs1.649

  18. 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

More Related