Re: GMP 6.2.1 Aborting when running tuneup program in one.cold()

2021-10-21 Thread Marco Bodrato

Ciao Simon,

Il 2021-10-20 16:09 Simon Sobisch ha scritto:

Questions:



* Should I care running tuneup at all?
  The application does some heavy computations with it in the range
  +-9 (mostly multiply and divide [often by 10] and


9 fits in 63 bits, correct?

For that range, on a 64-bits CPU, the native integer types should be 
enough.


The manual, with "extremely large numbers", means much larger bit-sizes.

You probably don't need tuneup at all.

Moreover, the sources of GMP already contain pre-tuned parameters for 
many platforms. They are automatically used by the typical

./condigure&& check
building process. So that tuning is, in most of the cases, superfluous.


* As the output of the tuneup utility is different each time and the
  docs at https://gmplib.org/manual/Performance-optimization are more
  spare than for other parts: Should I run it multiple times and then
  use the average?


Some thresholds may have a large range of tolerance, some doesn't.
In any case, a collection of parameters needs to be coherent.
So my answer is: use the results from a single run.

Ĝis,
m
___
gmp-bugs mailing list
gmp-bugs@gmplib.org
https://gmplib.org/mailman/listinfo/gmp-bugs


Re: GMP 6.2.1 Aborting when running tuneup program in one.cold()

2021-10-20 Thread Torbjörn Granlund
Simon Sobisch  writes:

  Am 20.10.2021 um 16:19 schrieb Torbjörn Granlund:
  > When tuneup cannot measure things accurately, it bails out.

  That's interesting. Is there any thing I can do to help tuneup measure
  things accurately?

Make sure your system is idle except for the tuneup process.

  Can you please add that important information (abort of the program is
  no bug, just use the non-optimized version) to the documentation
 https://gmplib.org/manual/Performance-optimization
  ideally together with the answer to the related questions
  "What should -f NNN" relate to?" and "Should I manually build the
  average" (if this isn't an effect of "not accurately measured")?

If we find time, perhaps.

Running the tuneup program and make use of its results is mainly
intended for GMP devs.

-- 
Torbjörn
Please encrypt, key id 0xC8601622
___
gmp-bugs mailing list
gmp-bugs@gmplib.org
https://gmplib.org/mailman/listinfo/gmp-bugs


Re: GMP 6.2.1 Aborting when running tuneup program in one.cold()

2021-10-20 Thread Simon Sobisch

Thanks for the prompt answer!

Am 20.10.2021 um 16:19 schrieb Torbjörn Granlund:

When tuneup cannot measure things accurately, it bails out.


That's interesting. Is there any thing I can do to help tuneup measure 
things accurately?


Can you please add that important information (abort of the program is 
no bug, just use the non-optimized version) to the documentation

   https://gmplib.org/manual/Performance-optimization
ideally together with the answer to the related questions
"What should -f NNN" relate to?" and "Should I manually build the 
average" (if this isn't an effect of "not accurately measured")?


> No bug.

Maybe the tuneup program could also hint this at start (additional to 
the doc change)?


Something like

./tuneup
Try finding optimal parameters for ./mpn/x86_64/skylake/gmp-mparam.h
If this is not possible this program will abort, which is no bug, and 
you should use the untuned version.

Using: CPU cycle counter, supplemented by microsecond getrusage()
speed_precision 1, speed_unittime 3.34e-10 secs, CPU freq 2992.97 MHz
DEFAULT_MAX_SIZE 1000, fft_max_size 5


Simon
___
gmp-bugs mailing list
gmp-bugs@gmplib.org
https://gmplib.org/mailman/listinfo/gmp-bugs