Project

General

Profile

Slug #329

Why is DMPI slower than DMPClean?

Added by John Abbott about 11 years ago. Updated almost 9 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Improving
Target version:
Start date:
12 Mar 2013
Due date:
% Done:

0%

Estimated time:

Description

Try the following program; and then again but making P a NewPolyRing_DMPI.
The times I get are: clean=20s, DMPI=25s. There must be something wrong.

  const long N = 10000000;
  const long nvars = 12;
  cout << ShortDescription << endl;
  ring Q = RingQQ();
  SparsePolyRing P = NewPolyRing(Q, nvars);
  clog << "P = " << P << endl;
  double StartTime = CpuTime();
  vector<RingElem> v; v.reserve(N);

  RandomSeqBigInt rnd(-power(2,130),power(2,130));
  RandomSeqLong RndExp(0,100);
  vector<long> expv(nvars);
  for (long i=0; i < N; ++i)
  {
    RingElem coeff = RingElem(Q, BigRat(NextValue(rnd),NextValue(rnd)));
    for (long j=0; j < nvars; ++j)
      expv[j] = NextValue(RndExp);
    v.push_back(monomial(P, coeff, expv));
  }
  clog << "vector filled after time " << CpuTime()-StartTime << "\n";


Related issues

Related to CoCoALib - Bug #680: DistrMPolyClean does not use MemPool for summands?Resolved2015-04-13

History

#1 Updated by Anna Maria Bigatti about 10 years ago

  • Target version set to CoCoALib-0.99533 Easter14

#2 Updated by John Abbott about 10 years ago

  • Target version changed from CoCoALib-0.99533 Easter14 to CoCoALib-1.0

#3 Updated by Redmine Admin almost 9 years ago

  • Category set to Improving

Also available in: Atom PDF