-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bring CUDA support to Tracking.jl
#33
Merged
Merged
Changes from 104 commits
Commits
Show all changes
105 commits
Select commit
Hold shift + click to select a range
64b0064
initial commit in the gpu branch
5aad150
GPU function blueprints for downcovert & car. rep.
4d602f9
Gpu carrier generation draft
coezmaden f1952f5
downconvert loop blueprint
808b7d6
Implement carrier replica gpu function
coezmaden d905623
Implement code replica and corr on GPU
9cbca18
Delete unnecessary comments
c4e1616
Reflect the development in readme
a9869a3
Adjust Gain Controlled Signal for a GPU Signal
43c07fd
Fix constructor, make use of vector operations
186acde
Merge pull request #1 from JuliaGNSS/master
coezmaden 0c0b49e
Remove .vscode garbage, adjust global gitignore
4217d83
Change Float16 occurances to Float32 due to perf.
ad2b607
Change GPU carrier_replica to StructArray, adjust the calculation method
82bcf0f
Merge pull request #2 from ozmaden/master
coezmaden ecc981e
Complete the GPU downconvert function
c8fc7a4
Add CUDA package dependency
coezmaden 80e11e4
GPU correlation anc code replica blueprint
b8ae78b
Merge branch 'feature/gpu-accelerated-correlation' of https://github.…
4cb1e05
Fix syntax
coezmaden e263962
Correlation using dot product on GPU
coezmaden 269e956
Fix GPU correlate parameter types
coezmaden 9464364
Add new dependencies
coezmaden 2927448
Fix algorithm, use @views macro for performance
coezmaden ea93620
Optimize carrier generation by taking fewer steps
coezmaden 7cdacfa
Union types for the carrier and code
coezmaden a5b8c31
Gain control for the gpu signal implemented
coezmaden 629b96b
GPU code replica, GNSSSignals 28d32c4324e40a0b93391b06820deea98112a02d
16e69ed
Merge pull request #3 from JuliaGNSS/master
coezmaden eae463d
Merge pull request #4 from ozmaden/master
coezmaden 35d35d0
Merge pull request #5 from JuliaGNSS/master
coezmaden 4f3120c
Add functions from ozmaden/GNSSBenchmarks.jl
coezmaden b1d7b56
Reflect changes under GNSSSignals#feature/gpu
coezmaden e0fc930
Functioning GPU TrackingState
7c55ee5
account for CPU TrackingState
15aa324
Reflect GNSSSignals changes for tracking_loop
22a40ba
Update README for the GPSL1 struct change
a5aac85
Enforce AbstractArray
b9a40bd
AGC for CUDA signals
dc8d766
functioning GPU tracking loop
26db618
rectify start_sample
92ec34a
Fix resize problems
1eceefe
Stylistic change, variable names small letters
dfced23
Replace mutiple function calls with a variable
1cf107c
Remove conditional use_gpu flag, as it's taken care of in GNSSSignals.jl
7a0b6cf
cleanup residual errors
36cdd2c
Merge pull request #7 from JuliaGNSS/master
coezmaden 5f80968
Merge branch 'feature/gpu-accelerated-correlation' into master
coezmaden d111f2a
Merge pull request #8 from ozmaden/master
coezmaden 9ffc0f6
Fix tracking_loop trunc inexact error
4652695
Fix CPU tracking loop
5904d04
Implement GPU StructArray gen_carrier_replica!
coezmaden 7dade1f
Implement GPU StructArray correlate
coezmaden 5e52117
Implement GPU StructArray downconvert!
coezmaden a1b3df8
Allow for both CuArray and StructArray of CuArrays tracking loop
coezmaden 3b53bd8
Performance improvement for the CuArray correlator, implement dot pro…
coezmaden bff0e07
Performance improvements for the StructArray of CuArrays correlate, i…
coezmaden 5dd429a
Merge branch 'feature/gpu-accelerated-correlation' of github.com:ozma…
coezmaden 149e697
Performance improvement for the CuArray correlate
coezmaden c2e1a34
Create match_size_to_signal! function that checks if resizing is need…
coezmaden c21f3c1
Delete extra match_size_to_signal! definitions, fix dot products, imp…
coezmaden 39e0424
Remove Loop Vectorization compat
coezmaden 9c91eb7
Merge branch 'master' of https://github.com/JuliaGNSS/Tracking.jl int…
coezmaden a719cc2
Merge branch 'JuliaGNSS-master' into feature/gpu_kernels
coezmaden 8d30a28
Reflect changes in JuliaGNSS:master
coezmaden fa580d3
GPU TrackingState, DownconvertedSignalGPU, CarrierReplicaGPU
coezmaden ad0f826
GPU tracking state initializes iff signal is known
coezmaden 2c38ed0
GPU Tracking State doesn't need code, insert the main kernel
coezmaden 7fcc4a9
Merge pull request #13 from JuliaGNSS/master
coezmaden 4023b64
Fix phase error in kernel; kernel works for start:end signal; Trackin…
coezmaden 92f7bb2
Checks for type equality of system.codes and signal, signal structarr…
coezmaden a0e912a
GPU TrackingState testset
coezmaden 345e03f
GPU tracking results testset
coezmaden 7ccdb91
GPU tracking_loop testset, add CUDA to test name
coezmaden 93ce7a3
GPU bit detector testset
coezmaden 911c04d
GPU GPSL5 testset
coezmaden 468c9b0
GPU GPSL1 testset
coezmaden 9646328
GPU GalileoE1B testset
coezmaden 7b60fe0
GPU discriminators testset
coezmaden e80b4c0
GPU CN0 estimation testset
coezmaden 480f283
GPU BOC testset
coezmaden 6256c92
GPU bit buffer testset
coezmaden 002dd2d
Fix phase calculation (multiples of 2pi)
coezmaden c9410ef
Add CUDA tests to runtests includes
coezmaden c7b31b6
Allow scalar indexing for cn0_estimation test
coezmaden 2bd5482
Allowscalar deprecation
coezmaden 0ce8e02
Solve scalar indexing in accumaltor results
coezmaden 363159e
Fix GPU multi antenna tracking state
coezmaden 9d278e0
Seperate functions for matrix and vector cases
coezmaden b4d66c1
Allowscalar for tracking loop tests
coezmaden 10d7960
Remove CUDA broadcasting functions, clean comments
coezmaden 63d21d2
Update readme with a `CUDA.jl` example
coezmaden 465b422
Merge ozmaden/Tracking#14
coezmaden 2c235dc
Merge branch 'master' of git://github.com/JuliaGNSS/Tracking.jl into …
coezmaden 504afbb
Merge branch 'JuliaGNSS-master' into feature/gpu_kernels
coezmaden e5a8398
Adjust GPU functions according to the change https://github.com/Julia…
coezmaden eb51208
Make CUDA test names consistent
coezmaden e45cd77
Add multiple antenna GPU test
coezmaden 8f3464d
Fix examples according to https://github.com/JuliaGNSS/Tracking.jl/pu…
coezmaden 90358a9
Check for signal and codes type consistency
coezmaden 81d94c3
Add Julia BuildKite CI for CUDA tests
ccb75f0
Remove leftovers
coezmaden 2a24f7d
Remove unnecessary structs
coezmaden eab881c
Remove the unnecessary carrier vector
coezmaden 724dcf6
Remove unused functions and duplicates
coezmaden File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
env: | ||
SECRET_CODECOV_TOKEN: "Q3fuMdJjaQy9h/uk43rwSqz8M6ulvlCedU2Ir0S3QLP4t9F8cf7pzrTkX+nVhkGycZ/r5FRtTOwPr445R3wK5v9mEAsJN5GMOgI5w/L8m2XDwLmW3PN8RMno+fm2JVxZyPMNNmIQqbYEmmQcBS6Q3nywW3xi0Cl5umJuwDB+NdOFbpq3wc2wrnbOAbwlBJoCJmlH+F4ncuVY6EMmsgNKAf9RqUNWQxIthG616X1cNwuYEpL4dO/PWY2GMXWXTQ8ndO/713p4b5yIlzDP0mr2MrO+1A5fhgPc7Vr+f9mUlIAx+9AsWQYPrqPTkr2L5+mfaTodVE3u2Cop877WJZQD7w==;U2FsdGVkX1/wk2jzfWlRZ66IWgionQK/5Fu0pg3u0b26hhmmMjAjOklyi7QZKhJHjjt4KjK/dJzhd3eK28S0qQ==" | ||
|
||
steps: | ||
- label: "Julia v1.6" | ||
plugins: | ||
- JuliaCI/julia#v1: | ||
version: "1.6" | ||
- JuliaCI/julia-test#v1: ~ | ||
- JuliaCI/julia-coverage#v1: | ||
codecov: true | ||
agents: | ||
queue: "juliagpu" | ||
cuda: "*" | ||
if: build.message !~ /\[skip tests\]/ | ||
timeout_in_minutes: 60 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Those 3 lines are exactly the same as 370-372. So I think we can get rid of this.