Changeset cd7ce9b in git


Ignore:
Timestamp:
Jul 19, 2013, 5:29:51 PM (10 years ago)
Author:
Martin Lee <martinlee84@…>
Branches:
(u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'f875bbaccd0831e36aaed09ff6adeb3eb45aeb94')
Children:
70073a2b66e97fcaccabe33c14bb671aa245992c
Parents:
3e0c11d34cd0300998b687c191f99d28fea7f47c
git-author:
Martin Lee <martinlee84@web.de>2013-07-19 17:29:51+02:00
git-committer:
Martin Lee <martinlee84@web.de>2013-07-22 15:49:54+02:00
Message:
chg: added some timing infos
chg: order of multiplicands
File:
1 edited

Legend:

Unmodified
Added
Removed
  • factory/facHensel.cc

    r3e0c11d rcd7ce9b  
    3535#include <NTL/lzz_pEX.h>
    3636#include "NTLconvert.h"
     37
     38TIMING_DEFINE_PRINT (diotime)
     39TIMING_DEFINE_PRINT (product1)
     40TIMING_DEFINE_PRINT (product2)
     41TIMING_DEFINE_PRINT (hensel23)
     42TIMING_DEFINE_PRINT (hensel)
    3743
    3844static
     
    20622068  CFListIterator j= products;
    20632069  for (CFListIterator i= recDiophantine; i.hasItem(); i++, j++)
    2064     e -= i.getItem()*j.getItem();
     2070    e -= j.getItem()*i.getItem();
    20652071
    20662072  CFList result= recDiophantine;
     
    20842090      {
    20852091        k.getItem() += j.getItem()*power (y, i);
    2086         e -= j.getItem()*power (y, i)*l.getItem();
     2092        e -= l.getItem()*(j.getItem()*power (y, i));
    20872093      }
    20882094    }
     
    21322138
    21332139  // actual lifting
     2140  TIMING_START (diotime);
    21342141  CFList diophantine2= diophantine (diophant, factors, products, MOD, E,
    21352142                                    noOneToOne);
     
    21442151    bufFactors[k] += xToJ*i.getItem();
    21452152  }
     2153  TIMING_END_AND_PRINT (diotime, "time for dio: ");
    21462154
    21472155  // update Pi [0]
     2156  TIMING_START (product2);
    21482157  int degBuf0= degree (bufFactors[0], x);
    21492158  int degBuf1= degree (bufFactors[1], x);
     
    23302339    Pi[l] += tmp[l]*xToJ*F.mvar();
    23312340  }
     2341  TIMING_END_AND_PRINT (product2, "time for product in hensel step: ");
    23322342  return;
    23332343}
     
    25402550  bufF= mod (bufF, Variable (3));
    25412551
     2552  TIMING_START (diotime);
    25422553  diophant= diophantine (bufF, bufFactors2);
     2554  TIMING_END_AND_PRINT (diotime, "time for dio in 23: ");
    25432555
    25442556  CFMatrix M= CFMatrix (liftBound, bufFactors2.length() - 1);
     
    26042616  CFList products;
    26052617  bufF= mod (F, Variable (3));
     2618  TIMING_START (product1);
    26062619  for (CFListIterator k= factors; k.hasItem(); k++)
    26072620    products.append (bufF/k.getItem());
     2621  TIMING_END_AND_PRINT (product1, "time for product1 in 23: ");
    26082622
    26092623  CFList MOD= CFList (power (v, liftBound));
     
    26682682  CanonicalForm quot, bufF= F.getFirst();
    26692683
     2684  TIMING_START (product1);
    26702685  for (int i= 0; i < bufFactors.size(); i++)
    26712686  {
     
    26892704    }
    26902705  }
     2706  TIMING_END_AND_PRINT (product1, "time for product1 in further hensel:" );
    26912707
    26922708  for (int d= 1; d < lNew; d++)
     
    27162732  int k= 0;
    27172733
     2734  TIMING_START (hensel23);
    27182735  CFList result=
    27192736  nonMonicHenselLift23 (eval.getFirst(), factors, LCs [0], diophant, bufPi,
    27202737                        liftBound[1], liftBound[0], noOneToOne);
     2738  TIMING_END_AND_PRINT (hensel23, "time for 23: ");
    27212739
    27222740  if (noOneToOne)
     
    27402758    bufEval.append (j.getItem());
    27412759    M= CFMatrix (liftBound[i], factors.length() - 1);
     2760    TIMING_START (hensel);
    27422761    result= nonMonicHenselLift (bufEval, result, LCs [i-1], diophant, bufPi, M,
    27432762                                liftBound[i-1], liftBound[i], MOD, noOneToOne);
     2763    TIMING_END_AND_PRINT (hensel, "time for further hensel: ");
    27442764    if (noOneToOne)
    27452765      return result;
Note: See TracChangeset for help on using the changeset viewer.