guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#53121] [PATCH] gnu: ceres: Update to 2.0.0.


From: Felix Gruber
Subject: [bug#53121] [PATCH] gnu: ceres: Update to 2.0.0.
Date: Tue, 18 Jan 2022 12:39:42 +0000

Hi Ludo’,

On 1/11/22 20:10, Ludovic Courtès wrote:
Hi,

Felix Gruber <felgru@posteo.net> skribis:

* gnu/packages/maths.scm (ceres): Update to 2.0.0.
   [inputs]: Use simplified format.
   (ceres-solver-benchmarks)[phases]: Add schur_eliminator_benchmark.
   Replace autodiff_cost_function_benchmark with new autodiff_benchmarks.

Applied, thanks!

Since you’re looking at benchmarks, I’d be curious to see how those you
added compare when passing ‘--tune’:

   
https://hpc.guix.info/blog/2022/01/tuning-packages-for-a-cpu-micro-architecture/

Unfortunately, I'm getting mixed results for the benchmarks. In most cases, I got slight (<10%) improvements in runtime, but there are also some benchmarks that were worse with the --tune flag. I'm wondering whether the compiler flags set by the --tune option are correctly used by the custom 'build phase of the ceres-solver-benchmarks package. I didn't have the time to look closer into it as I'm currently in the middle of moving to another country.

Anyways, I've attached the results of benchmark runs that I've generated using guix commit 7f779286df7e8636d901f4734501902cc934a72f once untuned and once tuned for broadwell CPUs. My laptop on which I ran the tests has a Quad Core AMD Ryzen 7 PRO 2700U CPU with 2200 MHz.

In the attachments you find
* a script run_benchmarks.sh used to run the benchmarks in tuned and untuned guix shells, * text files ending in `-tuned` or `-untuned` which contain the results of those benchmark runs, * a script compare.sh which calls a Python script compare-results.py to generate files ending in `-diff` that contain the relative change between untuned and tuned benchmarks (negative time and CPU percentages mean the tuned benchmark was faster, while for the number of iterations, positive percentages mean the tuned benchmark had run more iterations).

Best regards,
Felix

Attachment: run_benchmarks.sh
Description: application/shellscript

Attachment: compare.sh
Description: application/shellscript

Attachment: compare-results.py
Description: Text Data

Attachment: autodiff_benchmarks-diff
Description: Text document

Attachment: autodiff_benchmarks-tuned
Description: Text document

Attachment: autodiff_benchmarks-untuned
Description: Text document

Attachment: schur_eliminator_benchmark-diff
Description: Text document

Attachment: schur_eliminator_benchmark-tuned
Description: Text document

Attachment: schur_eliminator_benchmark-untuned
Description: Text document

Attachment: small_blas_gemm_benchmark-diff
Description: Text document

Attachment: small_blas_gemm_benchmark-tuned
Description: Text document

Attachment: small_blas_gemm_benchmark-untuned
Description: Text document

Attachment: small_blas_gemv_benchmark-diff
Description: Text document

Attachment: small_blas_gemv_benchmark-tuned
Description: Text document

Attachment: small_blas_gemv_benchmark-untuned
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]