* gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - failure
@ 2015-01-10 17:54 Loic Dachary
2015-01-10 17:58 ` Loic Dachary
2015-02-02 21:14 ` Janne Grunau
0 siblings, 2 replies; 4+ messages in thread
From: Loic Dachary @ 2015-01-10 17:54 UTC (permalink / raw)
To: Kevin Greenan, Janne Grunau; +Cc: Ceph Development
[-- Attachment #1: Type: text/plain, Size: 2332 bytes --]
Hi Kevin & Janne,
The test gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - fails on the current gf-complete master. The first commit where it fails is
commit 474010a91d35fef5ca7dea77205b6a5c7e68c3e9
Author: Janne Grunau <j@jannau.net>
Date: Wed Sep 17 16:10:25 2014 +0200
arm: NEON optimisations for gf_w16
Optimisations for the 4,16 split table region multiplications.
Selected time_tool.sh 16 -A -B results for a 1.7 GHz cortex-a9:
Region Best (MB/s): 532.14 W-Method: 16 -m SPLIT 16 4 -r SIMD -
Region Best (MB/s): 212.34 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -
Region Best (MB/s): 801.36 W-Method: 16 -m SPLIT 16 4 -r SIMD -r ALTMAP -
Region Best (MB/s): 93.20 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -r ALTMAP -
Region Best (MB/s): 273.99 W-Method: 16 -m SPLIT 16 8 -
Region Best (MB/s): 270.81 W-Method: 16 -m SPLIT 8 8 -
Region Best (MB/s): 70.42 W-Method: 16 -m COMPOSITE 2 - -
Region Best (MB/s): 393.54 W-Method: 16 -m COMPOSITE 2 - -r ALTMAP -
but the test did exit(0) on error instead of exit(1) and we failed to notice.
gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP -
Args: 16 A -1 -m SPLIT 16 4 -r ALTMAP - / size (bytes): 524428
Problem with region multiply (all values in hex):
Target address base: 0x8fd08e. Word 0x1 of 0x1fee. Xor: 0
Value: 2
Original source word: d00a
Product word: a000
It should be: b01f
Do you have an idea why this happens ? For the record here is the bisect command I used:
git bisect start 6fdd8bc3d32cb2f7fa55d2de9dc7cc5bb2f885aa 36e75c3efec08b1e9bdb9c1f69a5b0018abd8ac7
git bisect run try.sh
#!/bin/bash
log=$(git rev-parse HEAD)
echo $log.log
make distclean > $log.log 2>&1
./autogen.sh >> $log.log 2>&1
./configure >> $log.log 2>&1
make -j4 >> $log.log 2>&1
! test/gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - 2>&1 | grep 'It should be'
Note that b87c41f282dccc1b3649e3ea3fb80d19f820310 fails the test for different reasons:
Args: 16 A -1 -m SPLIT 16 4 -r ALTMAP - / size (bytes): 524428
*** Error in `/home/ubuntu/f/gf-complete/test/.libs/lt-gf_unit': free(): invalid pointer: 0x00ce7070 ***
try.sh: line 8: 12193 Aborted test/gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP -
Cheers
--
Loïc Dachary, Artisan Logiciel Libre
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - failure
2015-01-10 17:54 gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - failure Loic Dachary
@ 2015-01-10 17:58 ` Loic Dachary
2015-02-02 21:14 ` Janne Grunau
1 sibling, 0 replies; 4+ messages in thread
From: Loic Dachary @ 2015-01-10 17:58 UTC (permalink / raw)
To: Kevin Greenan, Janne Grunau; +Cc: Ceph Development
[-- Attachment #1: Type: text/plain, Size: 2604 bytes --]
I should add that this failure only happens on ARMv7 Ubuntu with gcc version 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu7)
On 10/01/2015 18:54, Loic Dachary wrote:
> Hi Kevin & Janne,
>
> The test gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - fails on the current gf-complete master. The first commit where it fails is
>
> commit 474010a91d35fef5ca7dea77205b6a5c7e68c3e9
> Author: Janne Grunau <j@jannau.net>
> Date: Wed Sep 17 16:10:25 2014 +0200
>
> arm: NEON optimisations for gf_w16
>
> Optimisations for the 4,16 split table region multiplications.
>
> Selected time_tool.sh 16 -A -B results for a 1.7 GHz cortex-a9:
> Region Best (MB/s): 532.14 W-Method: 16 -m SPLIT 16 4 -r SIMD -
> Region Best (MB/s): 212.34 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -
> Region Best (MB/s): 801.36 W-Method: 16 -m SPLIT 16 4 -r SIMD -r ALTMAP -
> Region Best (MB/s): 93.20 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -r ALTMAP -
> Region Best (MB/s): 273.99 W-Method: 16 -m SPLIT 16 8 -
> Region Best (MB/s): 270.81 W-Method: 16 -m SPLIT 8 8 -
> Region Best (MB/s): 70.42 W-Method: 16 -m COMPOSITE 2 - -
> Region Best (MB/s): 393.54 W-Method: 16 -m COMPOSITE 2 - -r ALTMAP -
>
> but the test did exit(0) on error instead of exit(1) and we failed to notice.
>
> gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP -
> Args: 16 A -1 -m SPLIT 16 4 -r ALTMAP - / size (bytes): 524428
> Problem with region multiply (all values in hex):
> Target address base: 0x8fd08e. Word 0x1 of 0x1fee. Xor: 0
> Value: 2
> Original source word: d00a
> Product word: a000
> It should be: b01f
>
> Do you have an idea why this happens ? For the record here is the bisect command I used:
>
> git bisect start 6fdd8bc3d32cb2f7fa55d2de9dc7cc5bb2f885aa 36e75c3efec08b1e9bdb9c1f69a5b0018abd8ac7
> git bisect run try.sh
>
> #!/bin/bash
> log=$(git rev-parse HEAD)
> echo $log.log
> make distclean > $log.log 2>&1
> ./autogen.sh >> $log.log 2>&1
> ./configure >> $log.log 2>&1
> make -j4 >> $log.log 2>&1
> ! test/gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - 2>&1 | grep 'It should be'
>
> Note that b87c41f282dccc1b3649e3ea3fb80d19f820310 fails the test for different reasons:
>
> Args: 16 A -1 -m SPLIT 16 4 -r ALTMAP - / size (bytes): 524428
> *** Error in `/home/ubuntu/f/gf-complete/test/.libs/lt-gf_unit': free(): invalid pointer: 0x00ce7070 ***
> try.sh: line 8: 12193 Aborted test/gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP -
>
> Cheers
>
--
Loïc Dachary, Artisan Logiciel Libre
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - failure
2015-01-10 17:54 gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - failure Loic Dachary
2015-01-10 17:58 ` Loic Dachary
@ 2015-02-02 21:14 ` Janne Grunau
2015-02-02 21:47 ` Loic Dachary
1 sibling, 1 reply; 4+ messages in thread
From: Janne Grunau @ 2015-02-02 21:14 UTC (permalink / raw)
To: Loic Dachary; +Cc: Kevin Greenan, Ceph Development
On 2015-01-10 18:54:43 +0100, Loic Dachary wrote:
> Hi Kevin & Janne,
>
> The test gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - fails on the current gf-complete master. The first commit where it fails is
>
> commit 474010a91d35fef5ca7dea77205b6a5c7e68c3e9
> Author: Janne Grunau <j@jannau.net>
> Date: Wed Sep 17 16:10:25 2014 +0200
>
> arm: NEON optimisations for gf_w16
>
> Optimisations for the 4,16 split table region multiplications.
>
> Selected time_tool.sh 16 -A -B results for a 1.7 GHz cortex-a9:
> Region Best (MB/s): 532.14 W-Method: 16 -m SPLIT 16 4 -r SIMD -
> Region Best (MB/s): 212.34 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -
> Region Best (MB/s): 801.36 W-Method: 16 -m SPLIT 16 4 -r SIMD -r ALTMAP -
> Region Best (MB/s): 93.20 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -r ALTMAP -
> Region Best (MB/s): 273.99 W-Method: 16 -m SPLIT 16 8 -
> Region Best (MB/s): 270.81 W-Method: 16 -m SPLIT 8 8 -
> Region Best (MB/s): 70.42 W-Method: 16 -m COMPOSITE 2 - -
> Region Best (MB/s): 393.54 W-Method: 16 -m COMPOSITE 2 - -r ALTMAP -
>
> but the test did exit(0) on error instead of exit(1) and we failed to notice.
>
> gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP -
> Args: 16 A -1 -m SPLIT 16 4 -r ALTMAP - / size (bytes): 524428
> Problem with region multiply (all values in hex):
> Target address base: 0x8fd08e. Word 0x1 of 0x1fee. Xor: 0
> Value: 2
> Original source word: d00a
> Product word: a000
> It should be: b01f
>
> Do you have an idea why this happens ? For the record here is the bisect command I used:
yes, it happens because the arm code is incomplete and bogus. I did the
arm64 code first and then ported it to arm. This function uses arm64
specific instructions and thus needed a port to arm. The arm version
misses several computation steps. I guess I trusted the results of the
unit tests and didn't looked at gf_unit output on arm.
I'll send a fix tomorrow.
Janne
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - failure
2015-02-02 21:14 ` Janne Grunau
@ 2015-02-02 21:47 ` Loic Dachary
0 siblings, 0 replies; 4+ messages in thread
From: Loic Dachary @ 2015-02-02 21:47 UTC (permalink / raw)
To: Janne Grunau; +Cc: Kevin Greenan, Ceph Development
[-- Attachment #1: Type: text/plain, Size: 2429 bytes --]
On 02/02/2015 22:14, Janne Grunau wrote:
> On 2015-01-10 18:54:43 +0100, Loic Dachary wrote:
>> Hi Kevin & Janne,
>>
>> The test gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - fails on the current gf-complete master. The first commit where it fails is
>>
>> commit 474010a91d35fef5ca7dea77205b6a5c7e68c3e9
>> Author: Janne Grunau <j@jannau.net>
>> Date: Wed Sep 17 16:10:25 2014 +0200
>>
>> arm: NEON optimisations for gf_w16
>>
>> Optimisations for the 4,16 split table region multiplications.
>>
>> Selected time_tool.sh 16 -A -B results for a 1.7 GHz cortex-a9:
>> Region Best (MB/s): 532.14 W-Method: 16 -m SPLIT 16 4 -r SIMD -
>> Region Best (MB/s): 212.34 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -
>> Region Best (MB/s): 801.36 W-Method: 16 -m SPLIT 16 4 -r SIMD -r ALTMAP -
>> Region Best (MB/s): 93.20 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -r ALTMAP -
>> Region Best (MB/s): 273.99 W-Method: 16 -m SPLIT 16 8 -
>> Region Best (MB/s): 270.81 W-Method: 16 -m SPLIT 8 8 -
>> Region Best (MB/s): 70.42 W-Method: 16 -m COMPOSITE 2 - -
>> Region Best (MB/s): 393.54 W-Method: 16 -m COMPOSITE 2 - -r ALTMAP -
>>
>> but the test did exit(0) on error instead of exit(1) and we failed to notice.
>>
>> gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP -
>> Args: 16 A -1 -m SPLIT 16 4 -r ALTMAP - / size (bytes): 524428
>> Problem with region multiply (all values in hex):
>> Target address base: 0x8fd08e. Word 0x1 of 0x1fee. Xor: 0
>> Value: 2
>> Original source word: d00a
>> Product word: a000
>> It should be: b01f
>>
>> Do you have an idea why this happens ? For the record here is the bisect command I used:
>
> yes, it happens because the arm code is incomplete and bogus. I did the
> arm64 code first and then ported it to arm. This function uses arm64
> specific instructions and thus needed a port to arm. The arm version
> misses several computation steps. I guess I trusted the results of the
> unit tests and didn't looked at gf_unit output on arm.
>
> I'll send a fix tomorrow.
That's a relief :-)
Thanks !
>
> Janne
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
Loïc Dachary, Artisan Logiciel Libre
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-02-02 21:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-10 17:54 gf_unit 16 A -1 -m SPLIT 16 4 -r ALTMAP - failure Loic Dachary
2015-01-10 17:58 ` Loic Dachary
2015-02-02 21:14 ` Janne Grunau
2015-02-02 21:47 ` Loic Dachary
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.