Presentation is loading. Please wait.

Presentation is loading. Please wait.

Performed by:Liran Sperling 200476216 Gal Braun301357059 Instructor: Evgeny Fiksman המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory.

Similar presentations


Presentation on theme: "Performed by:Liran Sperling 200476216 Gal Braun301357059 Instructor: Evgeny Fiksman המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory."— Presentation transcript:

1 Performed by:Liran Sperling 200476216 Gal Braun301357059 Instructor: Evgeny Fiksman המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology department of Electrical Engineering GPS/INS Tracking System Using Particle Filter Model 1

2 Project Requirements 3 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Implement the INS/GPS system using particle filter model algorithm using Nvidia GPU and OpenCL platform

3 GPGPU Languages 6 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory DirectX (1995) Cuda (2006) OCL (2008) Open Computing Language Managed by Khronos group Use all computation resources in system Derived from C99

4 Khronos Group 6 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory

5 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Our GPU – GeForce GTX285 Price: 200$ – 250$

6 GPU Architecture 6 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory

7 OCL Memory model 6 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory

8 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory From C to OpenCL

9 System Description 4 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Combined GPS/INS navigation based on the particles filter model INS – Inertial Navigation System INS – Inertial Navigation System INS GPS – Global Positioning System GPS – Global Positioning System GPS Particles Filter Model – Combining the GPS and INS algorithms. Particles Filter Model – Combining the GPS and INS algorithms. Particles Filter Model Particles Filter Model

10 System Description 4 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory INS GPS Weights recalculation Resampling every 10 msec every 1 sec every 1 sec Neff > Nth Neff < Nth

11 CPU Block Diagram 5 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Initialization Particle Propagation Particle weight calc State vector calculation Covariance matrix calc Resampling Regularization No GPS measure GPS measure Particles number < N th Particles number > N th Weight recomputation Randomizing Effective particles number calc Matrix Inversion

12 Many Particles (30000). Many Particles (30000). Each particle is independent to the others. Each particle is independent to the others. Major parts of the algorithms can be performed in parallel. Major parts of the algorithms can be performed in parallel. OpenCL parallel computing will enable to use the GPGPU computing power to optimize the algorithm performance. OpenCL parallel computing will enable to use the GPGPU computing power to optimize the algorithm performance. המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Why GPU and OCL?

13 We would like to use our multi-core GPGPU to optimize the calculation time. How can it be done ? המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Calculation Optimization - Example

14 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Example - CPU Calculation time = 0 time units 1252131685411727392034712 Sum = 012 1 17 2 19 3 32 4 … 219 15 231 16

15 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Example – Naive GPU 1252131685411727392034712 Sum =529 Calculation time = 0 time units 0 529 1

16 Is the output correct ? Is the output correct ? Can this level really be achieved cosidering memory access & sychronizing ? Can this level really be achieved cosidering memory access & sychronizing ? המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory But…

17 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Example – Our GPU Solution 1252131685411727392034712 Calculation time = 0 time units 1 00000000 293252236421253 0000 65741775 2 00 82149 3 Sum = 0 231 4

18 Takes approximately. Takes approximately. Utilizes the GPUPU multi-core to the maximum. Utilizes the GPUPU multi-core to the maximum. And with large calculations (say, 30000 * 16), the calculation time is extremely reduced compared to the linear CPU solution. And with large calculations (say, 30000 * 16), the calculation time is extremely reduced compared to the linear CPU solution. המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Our Solution

19 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Development Methodology Final simulation Blocks layer Function layer

20 Function layer: Function layer: Transforming Matlab functions into OpenCL kernels & code. Transforming Matlab functions into OpenCL kernels & code. –Major difficulty was tranforming the Matlab “natural” matrix calculations into parallel C code and kernels. Comparing the outputs of the matlab and OpenCL functions. Comparing the outputs of the matlab and OpenCL functions. המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Development Methodology

21 Block layer: Block layer: The algorithm was divided into two major parts: The algorithm was divided into two major parts: Particles propagation block & weights recalculation. Particles propagation block & weights recalculation. Resampling block. Resampling block. –Major difficulty was synchronizing the code parts done by the CPU (the parts written in C code) and the parts done by the GPU (the parts written as OpenCL kernels). Comparing the outputs of the matlab and OpenCL. Comparing the outputs of the matlab and OpenCL. –Major difficulty was finding errors since it meant checking iteration by iteration of the algorithm running. המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Development Methodology

22 Final Simulation: Final Simulation: Running the entire algorithm over the 100 seconds long data file we received. Running the entire algorithm over the 100 seconds long data file we received. Comparing the results to the results provided by the C programming group. Comparing the results to the results provided by the C programming group. המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Development Methodology

23 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – X coordinate

24 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Y coordinate

25 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Z coordinate

26 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – X velocity

27 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Y velocity

28 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Z velocity

29 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Running Time %GPU calculating time:

30 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Running Time %GPU calculating time (excluding prediction):

31 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Running Time Number of calls to function:

32 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Running Time Number of calls to function (excluding Prediction & reads from memory):

33 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Running Time Function run time:

34 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Results – Running Time Cycle run time (presenting the 3 types of possible cycles):

35 Block Diagram המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory CPU No GPS measure GPS measure Particles number < N th Particles number > N th Randomizing Matrix Inversion 5 Initialization Particle Propagation Particle weight calc State vector calculation Covariance matrix calc Resampling Regularization Weight recomputation Effective particles number calc 5 0.58 [msec] 1.80 [msec] 10.44 [msec] 12.24 [msec]

36 3 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory שאלות ?

37 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory INS – Inertial Navigation System Back

38 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory GPS – Global Positioning System Back

39 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Particle Filter Model

40 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Particle Filter Model Back


Download ppt "Performed by:Liran Sperling 200476216 Gal Braun301357059 Instructor: Evgeny Fiksman המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory."

Similar presentations


Ads by Google