Skip to content

WIP: Shared arrays and GPU arrays #19

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

Merged
merged 4 commits into from
Oct 31, 2018

Conversation

mdavezac
Copy link
Contributor

Replaces and extends #12

@dlfivefifty, I have some benchmark results for GPUs (K1000). I'll try and send a plot ASAP. The gist is that for relatively large blocks there is a speedup of ~4-5 compared to using a BlockArray backend. For similar matrices, there is also speedup of the BlockArray vs PseudoBlockArray backend (say of 1.x). Not sure whether it comes from the overhead from the Mul and friends setup, or whether it is tied to memory locality, or something else.

The shared array example works, though I have not benchmarked it yet.

@mdavezac
Copy link
Contributor Author

On a different note, f3d26d5 adds a .editorconfig. If you think it's worth it, it might help harmonize coding styles across contributors until somebody writes a code formatter for Julia.

@dlfivefifty
Copy link
Member

Awesome! Mul has no overhead as it is compiled away (unless there’s a bug). It’s not too surprising that for large bandwidths the BlockArray backend is faster: BLAS is slower for large strides.

The reason I chose PseudoBlockArray was for small blocks, but it’s possible in retrospect that it was not the best choice.

@dlfivefifty dlfivefifty merged commit ab96be6 into JuliaLinearAlgebra:master Oct 31, 2018
@codecov-io
Copy link

Codecov Report

Merging #19 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@          Coverage Diff           @@
##           master     #19   +/-   ##
======================================
  Coverage    48.4%   48.4%           
======================================
  Files           8       8           
  Lines         849     849           
======================================
  Hits          411     411           
  Misses        438     438
Impacted Files Coverage Δ
src/linalg.jl 32.66% <ø> (ø) ⬆️

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 09f8364...f3d26d5. Read the comment docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants