matrix multiplication A x, x has some zeros
Hi all, I have to get Ax, A is n x n matrix, x is vector of length n. Some coords of x are zeros, so I want to economy time/cputime somehow w/o connecting sparse module from scipy. What's the easiest way to do so? Thx, D.
How big is n?
On Dec 14, 2007 1:24 AM, dmitrey
Hi all, I have to get Ax, A is n x n matrix, x is vector of length n. Some coords of x are zeros, so I want to economy time/cputime somehow w/o connecting sparse module from scipy. What's the easiest way to do so?
Thx, D. _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
I guess it doesn't matter, but typical n are 1...1000. However, I need to call the operation hundreds or thousands times (while running NLP solver ralg, so 4..5 * nIter times). Number of zeros can be 0...n-1 Charles R Harris wrote:
How big is n?
On Dec 14, 2007 1:24 AM, dmitrey
mailto:dmitrey.kroshko@scipy.org> wrote: Hi all, I have to get Ax, A is n x n matrix, x is vector of length n. Some coords of x are zeros, so I want to economy time/cputime somehow w/o connecting sparse module from scipy. What's the easiest way to do so?
Thx, D. _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org mailto:Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
------------------------------------------------------------------------
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
On Fri, 14 Dec 2007, dmitrey apparently wrote:
I guess it doesn't matter, but typical n are 1...1000. However, I need to call the operation hundreds or thousands times (while running NLP solver ralg, so 4..5 * nIter times). Number of zeros can be 0...n-1
Do both A and x change every iteration? Anyway, if x is sparse I think you'll get some benefit by doing idx=N.ravel(x)!=0 A[:,idx]*x[idx] hth, Alan Isaac
Thank you for the tip, however, I expect being vector of length n A and x change every iter. A is not sparse. Alan G Isaac wrote:
On Fri, 14 Dec 2007, dmitrey apparently wrote:
I guess it doesn't matter, but typical n are 1...1000. However, I need to call the operation hundreds or thousands times (while running NLP solver ralg, so 4..5 * nIter times). Number of zeros can be 0...n-1
Do both A and x change every iteration?
Anyway, if x is sparse I think you'll get some benefit by doing idx=N.ravel(x)!=0 A[:,idx]*x[idx]
hth, Alan Isaac
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
idx=N.ravel(x)!=0 A[:,idx]*x[idx]
On Fri, 14 Dec 2007, dmitrey apparently wrote:
I expect being vector of length n A and x change every iter. A is not sparse.
Still, whenever x has a lot of zeros, this should have a substantial payoff. That seems the only exploitable information you have offered in the problem. Cheers, Alan
Hi,
How sparse are A, x and Ax?
You probably will not find any time or operation efficiency unless A
and x are relatively sparse. With the small size of n, any efficiency
will typically be small in any case.
As you indicate that this has to be repeated multiple times, perhaps
you should look at your overall algorithm for efficiencies.
Bruce
On Dec 14, 2007 3:44 AM, dmitrey
I guess it doesn't matter, but typical n are 1...1000. However, I need to call the operation hundreds or thousands times (while running NLP solver ralg, so 4..5 * nIter times). Number of zeros can be 0...n-1
Charles R Harris wrote:
How big is n?
On Dec 14, 2007 1:24 AM, dmitrey
mailto:dmitrey.kroshko@scipy.org> wrote: Hi all, I have to get Ax, A is n x n matrix, x is vector of length n. Some coords of x are zeros, so I want to economy time/cputime somehow w/o connecting sparse module from scipy. What's the easiest way to do so?
Thx, D. _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org mailto:Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
------------------------------------------------------------------------
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://projects.scipy.org/mailman/listinfo/numpy-discussion
participants (4)
-
Alan G Isaac
-
Bruce Southey
-
Charles R Harris
-
dmitrey