Skip to content
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

implement sparse #1093

Merged
merged 1 commit into from
Oct 4, 2021
Merged

implement sparse #1093

merged 1 commit into from
Oct 4, 2021

Conversation

CarloLucibello
Copy link
Contributor

Fix #1088

@maleadt
Copy link
Member

maleadt commented Aug 11, 2021

Thanks! The CI failures looks related though:

      From worker 2:	========= Invalid __global__ write of size 4 bytes
      From worker 2:	=========     at 0xcd0 in void convert_CooToCsr_kernel<int=1>(int const *,int,int,int*)
      From worker 2:	=========     by thread (0,0,0) in block (0,0,0)
      From worker 2:	=========     Address 0x3392c900c is out of bounds
      From worker 2:	=========
  Test threw exception
  Expression: sparse(I, J, V) isa CuSparseMatrixCSC
  CUSPARSEError: internal error (code 7, CUSPARSE_STATUS_INTERNAL_ERROR)

@maleadt maleadt added bugfix This gets something working again. cuda libraries Stuff about CUDA library wrappers. labels Aug 11, 2021
@CarloLucibello
Copy link
Contributor Author

CarloLucibello commented Aug 12, 2021

Not sure what's going on here, probably it is exposing an already existing bug. How can I reproduce locally buildkite's Julia 1.6 (Debug) environment? Is julia -g2 enough?

@maleadt
Copy link
Member

maleadt commented Aug 12, 2021

1.6 probably isn't related, and you also don't need -g2. What's detecting the issue here, is compute-sanitizer. You can run tests like that by passing --sanitize, e.g., julia -e 'using Pkg; Pkg.test(; test_args=--sanitize cusparse)'.

To use the sanitizer on single files, i.e. outside of the test runner, find out the location to the binary by doing CUDA.compute_sanitizer() and then launch Julia like: ~/.julia/artifacts/b37afdc18b754625b23a968986ffe35252f9c875/bin/compute-sanitizer --tool memcheck --launch-timeout=0 --show-backtrace=no --target-processes=all --report-api-errors=no julia --project examples/vadd.jl

@codecov
Copy link

codecov bot commented Oct 4, 2021

Codecov Report

Merging #1093 (030fba3) into master (3a5b5be) will decrease coverage by 0.05%.
The diff coverage is 68.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1093      +/-   ##
==========================================
- Coverage   79.88%   79.83%   -0.06%     
==========================================
  Files         119      119              
  Lines        8261     8285      +24     
==========================================
+ Hits         6599     6614      +15     
- Misses       1662     1671       +9     
Impacted Files Coverage Δ
lib/cusparse/conversions.jl 79.50% <68.00%> (-0.95%) ⬇️
lib/cudadrv/context.jl 74.13% <0.00%> (-0.87%) ⬇️
src/state.jl 78.85% <0.00%> (-0.58%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 179498a...030fba3. Read the comment docs.

@maleadt
Copy link
Member

maleadt commented Oct 4, 2021

Looks good to go, thanks, and sorry for the delay!

@maleadt maleadt merged commit c6732d8 into JuliaGPU:master Oct 4, 2021
@CarloLucibello
Copy link
Contributor Author

thanks for finishing the job, I couldn't find the time (nor the knowledge!) to finish this myself.

max-Hawkins pushed a commit to max-Hawkins/CUDA.jl that referenced this pull request Feb 28, 2022
simonbyrne pushed a commit to simonbyrne/CUDA.jl that referenced this pull request Nov 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugfix This gets something working again. cuda libraries Stuff about CUDA library wrappers.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ambiguous sparse constructor
2 participants