Download presentation
Presentation is loading. Please wait.
Published byLindsay Daniels Modified over 8 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.