#13722: regression in determinant of certain dense matrices
-------------------------------------------+--------------------------------
Reporter: ppurka | Owner: jason, was
Type: defect | Status: new
Priority: major | Milestone: sage-5.6
Component: linear algebra | Resolution:
Keywords: regression, determinant | Work issues:
Report Upstream: N/A | Reviewers:
Authors: | Merged in:
Dependencies: | Stopgaps:
-------------------------------------------+--------------------------------
Description changed by ppurka:
Old description:
> See [https://groups.google.com/forum/?fromgroups#!topic/sage-
> support/jpRxVAQb1G8 this sage-support thread]. Essentially, there is a
> huge (1000x) slowdown in computing the determinant of certain dense
> matrices. The slowdown happened sometime in between sage-4.7.2 and
> sage-4.8.
>
> {{{
> ----------------------------------------------------------------------
> | Sage Version 4.7.2, Release Date: 2011-10-29 |
> | Type notebook() for the GUI, and license() for information. |
> ----------------------------------------------------------------------
> sage: attach det.sage
> K = 30 , result = -9
> Sage Version 4.7.2, Release Date: 2011-10-29
> sparse= True
> time = 0.260323047638
>
> K = 30 , result = -9
> Sage Version 4.7.2, Release Date: 2011-10-29
> sparse= False
> time = 0.026487827301
> sage:
> Exiting Sage (CPU time 0m1.77s, Wall time 0m29.31s).
> Exiting spawned Gap process.
>
> ----------------------------------------------------------------------
> | Sage Version 4.8, Release Date: 2012-01-20 |
> | Type notebook() for the GUI, and license() for information. |
> ----------------------------------------------------------------------
> sage: attach det.sage
> K = 30 , result = -9
> Sage Version 4.8, Release Date: 2012-01-20
> sparse= True
> time = 0.011904001236
>
> K = 30 , result = -9
> Sage Version 4.8, Release Date: 2012-01-20
> sparse= False
> time = 122.02807498
> }}}
>
> `det.sage` contains the following code:
> {{{#!python
> import time
>
> def test(K, SP):
> n=100
> f=taylor(prod((1-x**i) for i in range(1,n)),x,0,n)
> A=[f.coefficient(x,i) for i in range(n)]
> cf= [[A[i+j] for i in range(K)] for j in range(K)]
> m= matrix(ZZ, cf, sparse=SP)
> #
> t0=time.time()
> print " K =", K, ", result =", m.det()
> t_det= time.time()-t0
> print " ",version()
> print " sparse= ", SP
> print " time = ", t_det
>
> KK=30
> test(KK, True)
> print
> test(KK, False)
> }}}
New description:
See [https://groups.google.com/forum/?fromgroups#!topic/sage-
support/jpRxVAQb1G8 this sage-support thread]. Essentially, there is a
huge (10000x) slowdown in computing the determinant of certain dense
matrices. The slowdown happened sometime in between sage-4.7.2 and
sage-4.8.
{{{
----------------------------------------------------------------------
| Sage Version 4.7.2, Release Date: 2011-10-29 |
| Type notebook() for the GUI, and license() for information. |
----------------------------------------------------------------------
sage: attach det.sage
K = 30 , result = -9
Sage Version 4.7.2, Release Date: 2011-10-29
sparse= True
time = 0.260323047638
K = 30 , result = -9
Sage Version 4.7.2, Release Date: 2011-10-29
sparse= False
time = 0.026487827301
sage:
Exiting Sage (CPU time 0m1.77s, Wall time 0m29.31s).
Exiting spawned Gap process.
----------------------------------------------------------------------
| Sage Version 4.8, Release Date: 2012-01-20 |
| Type notebook() for the GUI, and license() for information. |
----------------------------------------------------------------------
sage: attach det.sage
K = 30 , result = -9
Sage Version 4.8, Release Date: 2012-01-20
sparse= True
time = 0.011904001236
K = 30 , result = -9
Sage Version 4.8, Release Date: 2012-01-20
sparse= False
time = 122.02807498
}}}
`det.sage` contains the following code:
{{{#!python
import time
def test(K, SP):
n=100
f=taylor(prod((1-x**i) for i in range(1,n)),x,0,n)
A=[f.coefficient(x,i) for i in range(n)]
cf= [[A[i+j] for i in range(K)] for j in range(K)]
m= matrix(ZZ, cf, sparse=SP)
#
t0=time.time()
print " K =", K, ", result =", m.det()
t_det= time.time()-t0
print " ",version()
print " sparse= ", SP
print " time = ", t_det
KK=30
test(KK, True)
print
test(KK, False)
}}}
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/13722#comment:1>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.