Xxhash: Vergleichen mit discohash

Erstellt am 25. Mai 2020  ·  3Kommentare  ·  Quelle: Cyan4973/xxHash

Hilfreichster Kommentar

Auf aarch64 gibt es sicher nichts, worüber man nach Hause schreiben könnte...

./xxhsum 0.7.4 by Yann Collet, compiled as 64-bit aarch64 + NEON little endian with Clang 9.0.1
Sample of 100 KB...
XXH32                         :     102400 ->    28157 it/s ( 2749.7 MB/s)
XXH32 unaligned               :     102400 ->    23081 it/s ( 2254.0 MB/s)
XXH64                         :     102400 ->    31571 it/s ( 3083.1 MB/s)
XXH64 unaligned               :     102400 ->    31668 it/s ( 3092.5 MB/s)
XXH3_64b                      :     102400 ->    61948 it/s ( 6049.7 MB/s)
XXH3_64b unaligned            :     102400 ->    57711 it/s ( 5635.8 MB/s)
XXH3_64b w/seed               :     102400 ->    61672 it/s ( 6022.7 MB/s)
XXH3_64b w/seed unaligned     :     102400 ->    56974 it/s ( 5563.9 MB/s)
XXH3_64b w/secret             :     102400 ->    58678 it/s ( 5730.3 MB/s)
XXH3_64b w/secret unaligned   :     102400 ->    54466 it/s ( 5318.9 MB/s)
XXH128                        :     102400 ->    51548 it/s ( 5033.9 MB/s)
XXH128 unaligned              :     102400 ->    48912 it/s ( 4776.6 MB/s)
XXH128 w/seed                 :     102400 ->    52415 it/s ( 5118.7 MB/s)
XXH128 w/seed unaligned       :     102400 ->    49660 it/s ( 4849.6 MB/s)
XXH128 w/secret               :     102400 ->    49943 it/s ( 4877.2 MB/s)
XXH128 w/secret unaligned     :     102400 ->    46412 it/s ( 4532.4 MB/s)
DiscoHash                     :     102400 ->    12382 it/s ( 1209.2 MB/s)
DiscoHash unaligned           :     102400 ->    11626 it/s ( 1135.3 MB/s)

Alle 3 Kommentare

Auf aarch64 gibt es sicher nichts, worüber man nach Hause schreiben könnte...

./xxhsum 0.7.4 by Yann Collet, compiled as 64-bit aarch64 + NEON little endian with Clang 9.0.1
Sample of 100 KB...
XXH32                         :     102400 ->    28157 it/s ( 2749.7 MB/s)
XXH32 unaligned               :     102400 ->    23081 it/s ( 2254.0 MB/s)
XXH64                         :     102400 ->    31571 it/s ( 3083.1 MB/s)
XXH64 unaligned               :     102400 ->    31668 it/s ( 3092.5 MB/s)
XXH3_64b                      :     102400 ->    61948 it/s ( 6049.7 MB/s)
XXH3_64b unaligned            :     102400 ->    57711 it/s ( 5635.8 MB/s)
XXH3_64b w/seed               :     102400 ->    61672 it/s ( 6022.7 MB/s)
XXH3_64b w/seed unaligned     :     102400 ->    56974 it/s ( 5563.9 MB/s)
XXH3_64b w/secret             :     102400 ->    58678 it/s ( 5730.3 MB/s)
XXH3_64b w/secret unaligned   :     102400 ->    54466 it/s ( 5318.9 MB/s)
XXH128                        :     102400 ->    51548 it/s ( 5033.9 MB/s)
XXH128 unaligned              :     102400 ->    48912 it/s ( 4776.6 MB/s)
XXH128 w/seed                 :     102400 ->    52415 it/s ( 5118.7 MB/s)
XXH128 w/seed unaligned       :     102400 ->    49660 it/s ( 4849.6 MB/s)
XXH128 w/secret               :     102400 ->    49943 it/s ( 4877.2 MB/s)
XXH128 w/secret unaligned     :     102400 ->    46412 it/s ( 4532.4 MB/s)
DiscoHash                     :     102400 ->    12382 it/s ( 1209.2 MB/s)
DiscoHash unaligned           :     102400 ->    11626 it/s ( 1135.3 MB/s)

Nun, es scheint von dem Clang-Bug 42874 betroffen zu sein, aber die Behebung erreicht nur 1,3 GB/s.

GCC 9 erreicht 1,4 GB/s.

Danke für diese Vergleiche!
Discohash erscheint noch nicht auf https://rurban.github.io/smhasher/doc/table.html ... Obwohl die Quelle dort ist https://github.com/rurban/smhasher/blob/master/discohash.cpp ...
Schließen Sie das Thema gerne.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen