taskManeage - Tasks: task #16035, Optional activation of...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

task #16035: Optional activation of CPU-specific optimizations

Submitted by:  Mohammad Akhlaghi <makhlaghi>
Submitted on:  Mon 23 Aug 2021 08:13:21 PM UTC  
 
Should Start On:  Sun 22 Aug 2021 11:00:00 PM UTC Should be Finished on:  Sun 22 Aug 2021 11:00:00 PM UTC
Category:  Software Priority:  5 - Normal
Status:  Postponed Privacy:  Public
Percent Complete:  0% Assigned to:  None
Open/Closed:  Open Effort:  0.00

Mon 23 Aug 2021 08:13:21 PM UTC, original submission:  

Some programs have CPU-specific optimizations. Like '--enable-sse2' in CFITSIO that only works on Intel's x86-64 CPU architectures (see bug #61072).

Such optimizations may affect exact reproducibility of the final result (the simplest would be within the range of floating point errors, and it can get much more serious).

To avoid this, one solution is to add an option to './project' (maybe called '--cpu-optimizations') to let the user optionally activate CPU-architecture specific optimizations. When the user gives this option, a check can be added in 'configure.sh' for detecting the running CPU architecture, and writing the result in a fixed variable (this variable would be empty if that option to ./project wasn't given).

Afterwards, any software with a known CPU-architecture-specific configure option should only activate those options when the user wants, and for the certain CPU architectures that the program has optimizations before.

Of course, we should also print a BIG warning at the start when the user gives this option, to warn them that your result may not be reproducible/portable on other CPU architectures. But it won't be active by default, so for a user who doesn't know about it, it won't cause reproducibility problems.

This also has the good side effect that with a simple search for that variable in the software building Makefiles, we can find all software that have CPU-specific optimizations.

Mohammad Akhlaghi <makhlaghi>
Project Administrator

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by makhlaghi (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

     

     

    No changes have been made to this item

    Back to the top


    Powered by Savane 3.7