Creating sparse arrays seems exceptionally slow. I can set up the non-zero data of the array relatively quickly. For example, the following code takes about 80 seconds on one machine.
vec_len = 700000 row_ind = Uint64[] col_ind = Uint64[] value = Float64[] for j = 1:700000 for k = 1:700 ind = k*50 push!(row_ind, ind) push!(col_ind, j) push!(value, 5.0) end end but then a = sparse(row_ind, col_ind, value, 700000, 700000) takes more than at least about 30 minutes. (I never let it finish.) It doesn't seem like the numbers I'm using should be that far off the scale. Is there a more efficient way I should be doing what I'm doing? Am I missing something and asking for something that really is impractical? If not, I may be able to look into the sparse matrix code a little this weekend. The never-finishing result is the same if I try sprand(700000, 700000, .001) or if I try to set 700000*700 values in a sparse matrix of zeros directly. Thanks.