On Wed, 11 Sep 2024 01:59:54 GMT, Joe Darcy <da...@openjdk.org> wrote:

>>> If the test is going to use randomness, then its jtreg tags should include
>>> 
>>> `@key randomness`
>>> 
>>> and it is preferable to use jdk.test.lib.RandomFactory to get and Random 
>>> object since that handles printing out a key so the random sequence can be 
>>> replicated if the test fails.
>> 
>> Please see the test updated to use `@key randomness` and` 
>> jdk.test.lib.RandomFactory` to get and Random object.
>> 
>>> The allowable worst-case error is 2.5 ulp, although at many arguments 
>>> FDLIBM has a smaller error.
>>> For a general Math vs StrictMath test with an allowable 2.5 ulp error, 
>>> without knowing how accurate FDLIBM is for that function and argument, a 
>>> large error of approx. 2X the nominal error should be allowed (in case 
>>> FDLIBM errors in one direction and the Math method errors in the other 
>>> direction).
>>>
>> So far the tests haven't failed with error of 2.5ulp. Would it be better to 
>> make it 5ulp? Please let me know.
>
> So far, this will be the only intrinsic implementation of tanh. Therefore, at 
> the moment it is just checking the consistency of the intrinsic 
> implementation with StrictMath/FDLIBM tanh. If the intrinsic has a ~1 ulp 
> accuracy, it would be expected to often be within 2.5 ulps of FDLIBM tanh. 
> However, as written the regression test would not necessarily pass against 
> any allowable Math.tanh implementation, which is the usual criteria for 
> java.lang.Math tests that aren't otherwise constrained (such as by being 
> limited to a given subset of platforms).
> 
> If there was a correctly rounded tanh to compare against, then this style of 
> testing would be valid.
> 
> Are there any plan to intrinsify sinh or cosh?

Hi Joe (@jddarcy),

As suggested by Sandhya (@sviswa7), I added ~750 fixed point tests for tanh in 
`TanhTests.java` using the quad precision tanh implementation in libquadmath 
library from gcc. 

Please let me know if this looks good.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/20657#discussion_r1759579101

Reply via email to