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

RE: Regarding Items 15 and 17 on the agenda today (decimal floating-point)



Michel,
still suffer from an availability problem, 
I fully agree

evaluate the min/avg/med/max ... Minimum numbers are almost
meaningless
Yes, that is true; maybe we should have excluded those

So I would like to know what the proportion of special cases was
(zero, Inf, NaNs), what the range of significance was ...
Another colleague will provide some data or at least insight for the
comparison operation. For addition, here are the test cases we used for
the 64-bit operation - I believe all important cases are covered,
including those that you mentioned. The values are encoded in BID
format, with each test case consisting of { input1, input2,
reference_result }. I do not have a simple decoding function that I can
send, but the 64-bit encoding for v = (-1)^s * c * 10^(E-bias) is:

"s E c52-0" if the coefficient d0d1...d15 represented as a binary
integer fits in 53 bits or "s 11 E c50-0" otherwise (then c53-51 = 100);
E takes 10 bits, and the bias is 383 (s is the 1-bit sign). NaNs are
identified by 5 consecutive 1's after the sign bit, while 4 1's after
the sign bit followed by a zero bit followed by anything else represents
infinity, e.g. 0x7800000000000000 is +inf
Thanks,
Marius


test_case test_table[N] = {
{ 0x0000000000000000, 0x0000000000000000, 0x0000000000000000},
{ 0x31c0000000000001, 0x31c0000000000001, 0x31c0000000000002},
{ 0x31d0000000000000, 0x31d0000000000001, 0x6c70000000000001},
{ 0x6c70000000000001, 0x31c0000000000001, 0x6c70000000000002},
{ 0x6c73000000000001, 0x31c0000000000001, 0x6c73000000000002},
{ 0x6c70000000000001, 0x6c70000000000001, 0x31e6666666666667},
{ 0x31e0000000000001, 0x31c0000000000001, 0x31c000000000000b},
{ 0x33c0000000000001, 0x31c0000000000001, 0x31e38d7ea4c68000},
{ 0x6c73000000000000, 0x31c1000000000000, 0x31e399999999999a},
{ 0x33e1000000000000, 0x31c1000000000000, 0x33ca000000000000},
{ 0x32e1000000000000, 0x31e0000005F5E0FF, 0x32ca00000000000a},
{ 0x6c7b86F26FC0FFFF, 0x31c0000000000029, 0x32038d7ea4c68000},
{ 0x31c0000100000000, 0xb1c0000000000001, 0x31c00000ffffffff},
{ 0x3269ffff58393f99, 0x31c1000000000000, 0x3269fffffffeebe0},
{ 0x6c7b86F26FC0FFFF, 0x6c7000000000000b, 0x3203df6a29e53852},
{ 0x30c00000075BCD15, 0x31c0000000000001, 0x30c000000D51AE15},
{ 0x31cFCA32DC55C721, 0xb1a000000000002d, 0x31cFCA32DC55C71C},
{ 0x31cFCA32DC55C721, 0xb1a0000000000037, 0x31cFCA32DC55C71C},
{ 0x31cFCA32DC55C721, 0xb1800000000001c7, 0x31cFCA32DC55C71C},
{ 0x31cFCA32DC55C721, 0xb18000000000022b, 0x31cFCA32DC55C71B},
{ 0x6c7386F26FC0FFFF, 0x31c0000000000001, 0x31e38D7EA4C68000},
{ 0x6c7386F26FC0FFFE, 0x31c0000000000001, 0x6c7386F26FC0FFFF},
{ 0x31cFCA32DC55C71C, 0x31d3BCBF936B38E4, 0x31e38D7EA4C68000},
{ 0x31d00000075BCD14, 0x30a000001DCD64FF, 0x31d00000075BCD14},
{ 0x31d00000075BCD14, 0xb0a000001DCD64FF, 0x31d00000075BCD14},
{ 0x31d00000075BCD14, 0x30a000001DCD6501, 0x31d00000075BCD15},
{ 0x31d00000075BCD14, 0xb0a000001DCD6501, 0x31d00000075BCD13},
{ 0x31d00000075BCD14, 0x30a000001DCD6500, 0x31d00000075BCD14},
{ 0x31d00000075BCD14, 0xb0a000001DCD6500, 0x31d00000075BCD14},
{ 0x31d00000075BCD14, 0x31a0000000000005, 0x31d00000075BCD14},
{ 0x31d00000075BCD14, 0xb1a0000000000005, 0x31d00000075BCD14},
{ 0x6c4aFBE73EB25ECC, 0xb06886412DD19F13, 0x6c4aFBE6AFAE36A3},
{ 0x31c38D7EA4C68000, 0xb1a0000000000005, 0x6c6b86F26FC0FFFB },
{ 0x31c38D7EA4C68000, 0xafd1C37937E08000, 0x6c6b86F26FC0FFFB },
{ 0x31e38D7EA4C68000, 0xb1a0000000000005, 0x31e38D7EA4C68000 },
{ 0x31e38D7EA4C68000, 0xafd1C37937E08000, 0x31e38D7EA4C68000 },
{ 0x33c0000000000001, 0xb1a0000000000005, 0x31e38d7ea4c68000 },
{ 0x32800002540BE400, 0xb1a0000000000005, 0x31e38D7EA4C68000 },
{ 0x33e0000000000001, 0xb1c0000000000006, 0x6c7b86F26FC0FFFF},
{ 0x32038D7EA4C68000, 0xb1c0000000000006, 0x6c7b86F26FC0FFFF},
{ 0x3280000000000000, 0xb1a0000000000005, 0xb1a0000000000005 },
{ 0x3580000000000000, 0xb1a0000000000005, 0xb1a0000000000005 },
{ 0xb1a0000000000005, 0x3280000000000000, 0xb1a0000000000005 },
{ 0x6c8386F26FC0FFFF, 0x6c7386F26FC0FFFF, 0x32239696F3392000 },
{ 0x6c9386F26FC0FFFF, 0x6c7386F26FC0FFFF, 0x32638D95ED3D6800 },
{ 0x6cf386F26FC0FFFF, 0x6c7386F26FC0FFFF, 0x33e38D7EA4C68000 },

754 | revision | FAQ | references | list archive