-
Notifications
You must be signed in to change notification settings - Fork 121
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tests error on aarch64, ppc64le, s390x #20
Comments
Thank you for the report! It should be fixed now. The Go compiler now implements a fused multiply and add (FMA) instruction on some architectures, which leads to floating-point rounding differences compared to amd64. https://golang.org/ref/spec#Floating_point_operators I've modified the golden tests by adding a tolerance when comparing two images on architectures other than amd64. As for for brightness test, I've adjusted the input to avoid rounding differences. |
I'm closing the issue now. Feel free to reopen if needed. |
In TestImageOperationsGolden, tolerate slight floating-point rounding differences due to the use or non-use of "fused multiply and add" (FMA) instruction on different architectures. Special thanks to @disintegration for the solution in goldenEqual(); see disintegration/gift#20 Fixes gohugoio#6387
In TestImageOperationsGolden, tolerate slight floating-point rounding differences due to the use or non-use of "fused multiply and add" (FMA) instruction on different architectures. Special thanks to @disintegration for the solution in goldenEqual(); see disintegration/gift#20 Fixes #6387
This was exposed while testing CockroachDB. Following tests from pkg/sql/opt/exec/execbuilder fail due to floating point precision differences caused by FMA: - TestExecBuild/local/geospatial - TestExecBuild/local-vec-off/geospatial - TestExecBuild/local-spec-planning/geospatial - TestExecBuild/fakedist/geospatial - TestExecBuild/fakedist-vec-off/geospatial - TestExecBuild/fakedist-metadata/geospatial - TestExecBuild/fakedist-disk/geospatial - TestExecBuild/fakedist-spec-planning/geospatial With explicit casts in this patch, these failures are resolved. References: https://go.dev/ref/spec#Floating_point_operators golang/go#53297 golang/go#48145 disintegration/gift#20 (comment)
Golang 1.12.6 on aarch64, ppc64le, s390x:
The text was updated successfully, but these errors were encountered: