#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.

Reply via email to