Well, its not as simple as that because of everything being sparse (adding 
columns is not just a loop over sum). Actually, it would be interesting to 
see a clever solution. 

On Wednesday, November 18, 2015 at 2:14:39 AM UTC+2, Dan wrote:
>
> the columns of A'A when A is sparse are just sparse linear combinations of 
> columns of A. the coefficients being stored in the column-based sparse 
> matrix representation (internally a vector of coefficients with pointers to 
> new-column indices). so simply generating column by column with a for loop 
> should be as-quick-as-it-gets without GPUing or some Fourier trickery.
> did you already consider this? (i can try and make this description into 
> code)
>
> On Tuesday, November 17, 2015 at 10:26:21 PM UTC+2, Douglas Bates wrote:
>>
>> More careful reading of the spmatmul function in base/sparse/linalg.jl 
>> provided a method directly downdates the dense square matrix C (i.e. does 
>> not form a sparse A'A then downdate) but I still need to form a transpose. 
>>  If anyone knows of a fast way of forming A'A without creating the 
>> transpose I would be happy to hear of it.
>>
>

Reply via email to