Skip to content

add patch for OpenBLAS 0.3.7-0.3.12 to fix miscomputation on POWER#16199

Merged
akesandgren merged 1 commit intoeasybuilders:developfrom
Flamefire:20220906165808_new_pr_OpenBLAS030
Sep 23, 2022
Merged

add patch for OpenBLAS 0.3.7-0.3.12 to fix miscomputation on POWER#16199
akesandgren merged 1 commit intoeasybuilders:developfrom
Flamefire:20220906165808_new_pr_OpenBLAS030

Conversation

@Flamefire
Copy link
Copy Markdown
Contributor

@Flamefire Flamefire commented Sep 6, 2022

(created using eb --new-pr)

See OpenMathLib/OpenBLAS#2923 (comment)

@Flamefire
Copy link
Copy Markdown
Contributor Author

Test report by @Flamefire
SUCCESS
Build succeeded for 4 out of 4 (4 easyconfigs in total)
taurusml25 - Linux RHEL 7.6, POWER, 8335-GTX (power9le), 6 x NVIDIA Tesla V100-SXM2-32GB, 440.64.00, Python 2.7.5
See https://gist.github.com/3e0e61935afee1f938a1c520ff5a4109 for a full test report.

@Flamefire
Copy link
Copy Markdown
Contributor Author

Tested with an installed PyTorch/1.6.0-fosscuda-2019b-Python-3.7.4 via:

  • eb PyTorch-1.6.0-fosscuda-2019b-Python-3.7.4.eb --rebuild --installpath=/tmp --stop=patch
  • ml PyTorch/1.6.0-fosscuda-2019b-Python-3.7.4
  • cd /dev/shm/s3248973-EasyBuild/PyTorch/1.6.0/fosscuda-2019b-Python-3.7.4/pytorch-1.6.0/test
  • for i in OpenBLAS/0.3.7-GCC-8.3.0 OpenBLAS/0.3.8-GCC-9.2.0 OpenBLAS/0.3.9-GCC-9.3.0 OpenBLAS/0.3.12-GCC-10.2.0; do echo $i; ml $i && python test_nn.py TestNNDeviceTypeCPU.test_conv_large_cpu; done

Prior to this PR it failed, after the PR it succeeded.

@Flamefire
Copy link
Copy Markdown
Contributor Author

Note that the patch differs slightly from upstream as I needed to backport it:

Until 0.3.11 there was no #ifdef branch for POWER10 (introduced with OpenMathLib/OpenBLAS#2686) so up until 0.3.10 the only required patch is for POWER9, i.e. https://github.com/xianyi/OpenBLAS/blob/v0.3.10/param.h#L2263

For 0.3.12 POWER9 and POWER10 used the same values, so there is also only 1 change required: https://github.com/xianyi/OpenBLAS/blob/v0.3.12/param.h#L2391

In 0.3.14 and above the issue is fixed upstream by the linked PR.

Copy link
Copy Markdown
Contributor

@akesandgren akesandgren left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@akesandgren akesandgren added this to the 4.x milestone Sep 23, 2022
@akesandgren
Copy link
Copy Markdown
Contributor

Going in, thanks @Flamefire!

@akesandgren akesandgren merged commit 10ad0fd into easybuilders:develop Sep 23, 2022
@Flamefire Flamefire deleted the 20220906165808_new_pr_OpenBLAS030 branch September 23, 2022 08:58
@boegel boegel changed the title Fix miscomputation in OpenBLAS on POWER add patch for OpenBLAS 0.3.7-0.3.12 to fix miscomputation on POWER Sep 23, 2022
@boegel
Copy link
Copy Markdown
Member

boegel commented Sep 23, 2022

@boegelbot please test @ generoso

@boegel boegel modified the milestones: 4.x, next release (4.6.2?) Sep 23, 2022
@boegelbot
Copy link
Copy Markdown
Collaborator

@boegel: Request for testing this PR well received on login1

PR test command 'EB_PR=16199 EB_ARGS= /opt/software/slurm/bin/sbatch --job-name test_PR_16199 --ntasks=4 ~/boegelbot/eb_from_pr_upload_generoso.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 9174

Test results coming soon (I hope)...

Details

- notification for comment with ID 1255972246 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 4 out of 4 (4 easyconfigs in total)
cns1 - Linux Rocky Linux 8.5, x86_64, Intel(R) Xeon(R) CPU E5-2667 v3 @ 3.20GHz (haswell), Python 3.6.8
See https://gist.github.com/9f15deace183de3d2a688b5178046190 for a full test report.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants