-
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
f1952f5
downconvert loop blueprint
808b7d6
Implement carrier replica gpu function
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
80e11e4
GPU correlation anc code replica blueprint
b8ae78b
Merge branch 'feature/gpu-accelerated-correlation' of https://github.…
4cb1e05
Fix syntax
e263962
Correlation using dot product on GPU
269e956
Fix GPU correlate parameter types
9464364
Add new dependencies
2927448
Fix algorithm, use @views macro for performance
ea93620
Optimize carrier generation by taking fewer steps
7cdacfa
Union types for the carrier and code
a5b8c31
Gain control for the gpu signal implemented
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
b1d7b56
Reflect changes under GNSSSignals#feature/gpu
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!
7dade1f
Implement GPU StructArray correlate
5e52117
Implement GPU StructArray downconvert!
a1b3df8
Allow for both CuArray and StructArray of CuArrays tracking loop
3b53bd8
Performance improvement for the CuArray correlator, implement dot pro…
bff0e07
Performance improvements for the StructArray of CuArrays correlate, i…
5dd429a
Merge branch 'feature/gpu-accelerated-correlation' of github.com:ozma…
149e697
Performance improvement for the CuArray correlate
c2e1a34
Create match_size_to_signal! function that checks if resizing is need…
c21f3c1
Delete extra match_size_to_signal! definitions, fix dot products, imp…
39e0424
Remove Loop Vectorization compat
9c91eb7
Merge branch 'master' of https://github.com/JuliaGNSS/Tracking.jl int…
a719cc2
Merge branch 'JuliaGNSS-master' into feature/gpu_kernels
8d30a28
Reflect changes in JuliaGNSS:master
fa580d3
GPU TrackingState, DownconvertedSignalGPU, CarrierReplicaGPU
ad0f826
GPU tracking state initializes iff signal is known
2c38ed0
GPU Tracking State doesn't need code, insert the main kernel
7fcc4a9
Merge pull request #13 from JuliaGNSS/master
coezmaden 4023b64
Fix phase error in kernel; kernel works for start:end signal; Trackin…
92f7bb2
Checks for type equality of system.codes and signal, signal structarr…
a0e912a
GPU TrackingState testset
345e03f
GPU tracking results testset
7ccdb91
GPU tracking_loop testset, add CUDA to test name
93ce7a3
GPU bit detector testset
911c04d
GPU GPSL5 testset
468c9b0
GPU GPSL1 testset
9646328
GPU GalileoE1B testset
7b60fe0
GPU discriminators testset
e80b4c0
GPU CN0 estimation testset
480f283
GPU BOC testset
6256c92
GPU bit buffer testset
002dd2d
Fix phase calculation (multiples of 2pi)
c9410ef
Add CUDA tests to runtests includes
c7b31b6
Allow scalar indexing for cn0_estimation test
2bd5482
Allowscalar deprecation
0ce8e02
Solve scalar indexing in accumaltor results
363159e
Fix GPU multi antenna tracking state
9d278e0
Seperate functions for matrix and vector cases
b4d66c1
Allowscalar for tracking loop tests
10d7960
Remove CUDA broadcasting functions, clean comments
63d21d2
Update readme with a `CUDA.jl` example
465b422
Merge ozmaden/Tracking#14
2c235dc
Merge branch 'master' of git://github.com/JuliaGNSS/Tracking.jl into …
504afbb
Merge branch 'JuliaGNSS-master' into feature/gpu_kernels
e5a8398
Adjust GPU functions according to the change https://github.com/Julia…
eb51208
Make CUDA test names consistent
e45cd77
Add multiple antenna GPU test
8f3464d
Fix examples according to https://github.com/JuliaGNSS/Tracking.jl/pu…
90358a9
Check for signal and codes type consistency
81d94c3
Add Julia BuildKite CI for CUDA tests
ccb75f0
Remove leftovers
2a24f7d
Remove unnecessary structs
eab881c
Remove the unnecessary carrier vector
724dcf6
Remove unused functions and duplicates
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,6 +4,7 @@ authors = ["Soeren Zorn <[email protected]>"] | |
version = "0.14.8" | ||
|
||
[deps] | ||
CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" | ||
DocStringExtensions = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" | ||
GNSSSignals = "52c80523-2a4e-5c38-8979-05588f836870" | ||
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" | ||
|
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.