Open wwood opened 4 years ago
Hi Ben,
Thanks for reporting the issue, and lscpu is really helpful. It looks like you have SSE instruction sets, AVX, and pclmul but not AVX2.
Could you try a couple things to help me figure out what's going on?
gcc -march=native -dM -E - < /dev/null | grep -i "SSE\|AVX" | sort
It could also help if you tried the statically-linked prebuilt binaries.
My guess (from the above) is that it will run using the 128-bit version but crash on the 256-bit version.
The other thing you could try is git clone --recursive https://github.com/dnbaker/dashing && cd dashing && make dashing -j8
, and then see if it fails. (bioconda should, I think, be trying that, but it could help to try it outside of the condaverse.)
Thanks!
Daniel
Thanks for the quick reply.
$ gcc -march=native -dM -E - < /dev/null | grep -i "SSE\|AVX" | sort
#define __AVX__ 1
#define __corei7_avx 1
#define __corei7_avx__ 1
#define __SSE__ 1
#define __SSE2__ 1
#define __SSE2_MATH__ 1
#define __SSE3__ 1
#define __SSE4_1__ 1
#define __SSE4_2__ 1
#define __SSE_MATH__ 1
#define __SSSE3__ 1
#define __tune_corei7_avx__ 1
$ ./dashing_s128 cmp -M ~/git/galah-ben/tests/data/abisko4/*fna
Dashing version: v0.4.2
Illegal instruction (core dumped)
$ ./dashing_s256 cmp -M ~/git/galah-ben/tests/data/abisko4/*fna
Dashing version: v0.4.2
Illegal instruction (core dumped)
The make seemed to complete successfully, but produce unusable binaries:
ben@ben:/tmp$ git clone --recursive https://github.com/dnbaker/dashing && cd dashing && make dashing -j8
Cloning into 'dashing'...
remote: Enumerating objects: 139, done.
remote: Counting objects: 100% (139/139), done.
remote: Compressing objects: 100% (97/97), done.
remote: Total 1941 (delta 80), reused 96 (delta 42), pack-reused 1802
Receiving objects: 100% (1941/1941), 164.03 MiB | 15.47 MiB/s, done.
Resolving deltas: 100% (1070/1070), done.
Submodule 'bonsai' (https://github.com/dnbaker/bonsai) registered for path 'bonsai'
Submodule 'distmat' (https://github.com/dnbaker/distmat) registered for path 'distmat'
Submodule 'khset' (https://github.com/dnbaker/khset) registered for path 'khset'
Submodule 'sketch' (https://github.com/dnbaker/sketch) registered for path 'sketch'
Cloning into '/tmp/dashing/bonsai'...
remote: Enumerating objects: 27, done.
remote: Counting objects: 100% (27/27), done.
remote: Compressing objects: 100% (16/16), done.
remote: Total 5967 (delta 11), reused 21 (delta 8), pack-reused 5940
Receiving objects: 100% (5967/5967), 75.57 MiB | 13.39 MiB/s, done.
Resolving deltas: 100% (4395/4395), done.
Cloning into '/tmp/dashing/khset'...
remote: Enumerating objects: 8, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 58 (delta 2), reused 7 (delta 2), pack-reused 50
Cloning into '/tmp/dashing/distmat'...
remote: Enumerating objects: 15, done.
remote: Counting objects: 100% (15/15), done.
remote: Compressing objects: 100% (12/12), done.
remote: Total 169 (delta 7), reused 11 (delta 3), pack-reused 154
Receiving objects: 100% (169/169), 35.86 KiB | 233.00 KiB/s, done.
Resolving deltas: 100% (73/73), done.
Cloning into '/tmp/dashing/sketch'...
remote: Enumerating objects: 161, done.
remote: Counting objects: 100% (161/161), done.
remote: Compressing objects: 100% (64/64), done.
remote: Total 4662 (delta 80), reused 131 (delta 59), pack-reused 4501
Receiving objects: 100% (4662/4662), 1.16 MiB | 1.17 MiB/s, done.
Resolving deltas: 100% (3281/3281), done.
Submodule path 'bonsai': checked out '55e3c6918c1fb7f7fd294b15bfbe5f6587406856'
Submodule 'circularqueue' (https://github.com/dnbaker/circularqueue) registered for path 'bonsai/circularqueue'
Submodule 'clhash' (https://github.com/lemire/clhash) registered for path 'bonsai/clhash'
Submodule 'flat_hash_map' (https://github.com/skarupke/flat_hash_map) registered for path 'bonsai/flat_hash_map'
Submodule 'hll' (https://github.com/dnbaker/sketch) registered for path 'bonsai/hll'
Submodule 'klib' (https://github.com/attractivechaos/klib) registered for path 'bonsai/klib'
Submodule 'kspp' (https://github.com/dnbaker/kspp) registered for path 'bonsai/kspp'
Submodule 'lazy' (https://github.com/dnbaker/lazy) registered for path 'bonsai/lazy'
Submodule 'libpopcnt' (https://github.com/kimwalisch/libpopcnt) registered for path 'bonsai/libpopcnt'
Submodule 'linear' (https://github.com/dnbaker/linear) registered for path 'bonsai/linear'
Submodule 'ntHash' (https://github.com/bcgsc/ntHash) registered for path 'bonsai/ntHash'
Submodule 'pdqsort' (https://github.com/orlp/pdqsort) registered for path 'bonsai/pdqsort'
Submodule 'rollinghashcpp' (https://github.com/dnbaker/rollinghashcpp) registered for path 'bonsai/rollinghashcpp'
Submodule 'zlib' (https://github.com/madler/zlib) registered for path 'bonsai/zlib'
Cloning into '/tmp/dashing/bonsai/circularqueue'...
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 92 (delta 0), reused 1 (delta 0), pack-reused 91
Cloning into '/tmp/dashing/bonsai/clhash'...
remote: Enumerating objects: 85, done.
remote: Total 85 (delta 0), reused 0 (delta 0), pack-reused 85
Cloning into '/tmp/dashing/bonsai/lazy'...
remote: Enumerating objects: 7, done.
remote: Counting objects: 100% (7/7), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 44 (delta 2), reused 7 (delta 2), pack-reused 37
Cloning into '/tmp/dashing/bonsai/flat_hash_map'...
remote: Enumerating objects: 31, done.
remote: Total 31 (delta 0), reused 0 (delta 0), pack-reused 31
Cloning into '/tmp/dashing/bonsai/hll'...
remote: Enumerating objects: 161, done.
remote: Counting objects: 100% (161/161), done.
remote: Compressing objects: 100% (64/64), done.
remote: Total 4662 (delta 80), reused 131 (delta 59), pack-reused 4501
Receiving objects: 100% (4662/4662), 1.16 MiB | 1.15 MiB/s, done.
Resolving deltas: 100% (3281/3281), done.
Cloning into '/tmp/dashing/bonsai/kspp'...
remote: Enumerating objects: 12, done.
remote: Counting objects: 100% (12/12), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 312 (delta 4), reused 11 (delta 3), pack-reused 300
Receiving objects: 100% (312/312), 61.63 KiB | 307.00 KiB/s, done.
Resolving deltas: 100% (191/191), done.
Cloning into '/tmp/dashing/bonsai/libpopcnt'...
remote: Enumerating objects: 21, done.
remote: Counting objects: 100% (21/21), done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 825 (delta 9), reused 17 (delta 6), pack-reused 804
Receiving objects: 100% (825/825), 133.35 KiB | 332.00 KiB/s, done.
Resolving deltas: 100% (521/521), done.
Cloning into '/tmp/dashing/bonsai/klib'...
remote: Enumerating objects: 44, done.
remote: Counting objects: 100% (44/44), done.
remote: Compressing objects: 100% (31/31), done.
remote: Total 1340 (delta 27), reused 30 (delta 13), pack-reused 1296
Receiving objects: 100% (1340/1340), 1.20 MiB | 1.19 MiB/s, done.
Resolving deltas: 100% (771/771), done.
Cloning into '/tmp/dashing/bonsai/zlib'...
remote: Enumerating objects: 5144, done.
remote: Total 5144 (delta 0), reused 0 (delta 0), pack-reused 5144
Receiving objects: 100% (5144/5144), 3.61 MiB | 2.66 MiB/s, done.
Resolving deltas: 100% (3615/3615), done.
Cloning into '/tmp/dashing/bonsai/linear'...
remote: Enumerating objects: 42, done.
remote: Total 42 (delta 0), reused 0 (delta 0), pack-reused 42
Cloning into '/tmp/dashing/bonsai/pdqsort'...
remote: Enumerating objects: 292, done.
remote: Total 292 (delta 0), reused 0 (delta 0), pack-reused 292
Receiving objects: 100% (292/292), 86.99 KiB | 220.00 KiB/s, done.
Resolving deltas: 100% (162/162), done.
Cloning into '/tmp/dashing/bonsai/rollinghashcpp'...
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 279 (delta 2), reused 6 (delta 2), pack-reused 273
Receiving objects: 100% (279/279), 77.30 KiB | 314.00 KiB/s, done.
Resolving deltas: 100% (172/172), done.
Cloning into '/tmp/dashing/bonsai/ntHash'...
remote: Enumerating objects: 59, done.
remote: Counting objects: 100% (59/59), done.
remote: Compressing objects: 100% (50/50), done.
remote: Total 496 (delta 22), reused 27 (delta 8), pack-reused 437
Receiving objects: 100% (496/496), 11.87 MiB | 5.28 MiB/s, done.
Resolving deltas: 100% (266/266), done.
Submodule path 'bonsai/circularqueue': checked out 'cbe02d8e4792cf0f3eaf24a5f69f217762dc076d'
Submodule path 'bonsai/clhash': checked out '742f81a66c8e2ae7889d1bc4c4b4d8734bdcd5af'
Submodule path 'bonsai/flat_hash_map': checked out '2c4687431f978f02a3780e24b8b701d22aa32d9c'
Submodule path 'bonsai/hll': checked out '404dad2c6949a27121f8a2e9b4cd79dde1817647'
Submodule 'aesctr' (https://github.com/dnbaker/aesctr) registered for path 'bonsai/hll/aesctr'
Submodule 'circularqueue' (https://github.com/dnbaker/circularqueue) registered for path 'bonsai/hll/circularqueue'
Submodule 'compact_vector' (https://github.com/gmarcais/compact_vector) registered for path 'bonsai/hll/compact_vector'
Submodule 'flat_hash_map' (https://github.com/skarupke/flat_hash_map) registered for path 'bonsai/hll/flat_hash_map'
Submodule 'libpopcnt' (https://github.com/kimwalisch/libpopcnt) registered for path 'bonsai/hll/libpopcnt'
Submodule 'pybind11' (https://github.com/pybind/pybind11) registered for path 'bonsai/hll/pybind11'
Submodule 'vec' (https://github.com/dnbaker/vec) registered for path 'bonsai/hll/vec'
Submodule 'xxHash' (https://github.com/Cyan4973/xxHash) registered for path 'bonsai/hll/xxHash'
Cloning into '/tmp/dashing/bonsai/hll/aesctr'...
remote: Enumerating objects: 13, done.
remote: Counting objects: 100% (13/13), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 78 (delta 6), reused 11 (delta 4), pack-reused 65
Cloning into '/tmp/dashing/bonsai/hll/circularqueue'...
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 92 (delta 0), reused 1 (delta 0), pack-reused 91
Cloning into '/tmp/dashing/bonsai/hll/compact_vector'...
remote: Enumerating objects: 296, done.
remote: Total 296 (delta 0), reused 0 (delta 0), pack-reused 296
Receiving objects: 100% (296/296), 414.44 KiB | 488.00 KiB/s, done.
Resolving deltas: 100% (195/195), done.
Cloning into '/tmp/dashing/bonsai/hll/flat_hash_map'...
remote: Enumerating objects: 31, done.
remote: Total 31 (delta 0), reused 0 (delta 0), pack-reused 31
Cloning into '/tmp/dashing/bonsai/hll/vec'...
remote: Enumerating objects: 74, done.
remote: Counting objects: 100% (74/74), done.
remote: Compressing objects: 100% (56/56), done.
remote: Total 255 (delta 37), reused 52 (delta 18), pack-reused 181
Receiving objects: 100% (255/255), 66.30 KiB | 337.00 KiB/s, done.
Resolving deltas: 100% (148/148), done.
Cloning into '/tmp/dashing/bonsai/hll/xxHash'...
remote: Enumerating objects: 2672, done.
remote: Total 2672 (delta 0), reused 0 (delta 0), pack-reused 2672
Receiving objects: 100% (2672/2672), 1.33 MiB | 1.33 MiB/s, done.
Resolving deltas: 100% (1581/1581), done.
Cloning into '/tmp/dashing/bonsai/hll/libpopcnt'...
remote: Enumerating objects: 21, done.
remote: Counting objects: 100% (21/21), done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 825 (delta 9), reused 17 (delta 6), pack-reused 804
Receiving objects: 100% (825/825), 133.35 KiB | 156.00 KiB/s, done.
Resolving deltas: 100% (521/521), done.
Cloning into '/tmp/dashing/bonsai/hll/pybind11'...
remote: Enumerating objects: 11332, done.
remote: Total 11332 (delta 0), reused 0 (delta 0), pack-reused 11332
Receiving objects: 100% (11332/11332), 4.16 MiB | 4.39 MiB/s, done.
Resolving deltas: 100% (7647/7647), done.
Submodule path 'bonsai/hll/aesctr': checked out 'dbe690e8e903b873e6f2eb76d453da38e9fcba0b'
Submodule path 'bonsai/hll/circularqueue': checked out 'cbe02d8e4792cf0f3eaf24a5f69f217762dc076d'
Submodule path 'bonsai/hll/compact_vector': checked out 'e3bbd15290ac76b9732fab7b2d2a5c83ae01595e'
Submodule path 'bonsai/hll/flat_hash_map': checked out '2c4687431f978f02a3780e24b8b701d22aa32d9c'
Submodule path 'bonsai/hll/libpopcnt': checked out '0de541e96ee4c88e5bd28a0e941ac91e99c3b62f'
Submodule path 'bonsai/hll/pybind11': checked out '34c2281e315c51f5270321101dc733c1cf26214f'
Submodule 'tools/clang' (https://github.com/wjakob/clang-cindex-python3) registered for path 'bonsai/hll/pybind11/tools/clang'
Cloning into '/tmp/dashing/bonsai/hll/pybind11/tools/clang'...
remote: Enumerating objects: 8, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 361 (delta 2), reused 2 (delta 0), pack-reused 353
Receiving objects: 100% (361/361), 147.50 KiB | 92.00 KiB/s, done.
Resolving deltas: 100% (151/151), done.
Submodule path 'bonsai/hll/pybind11/tools/clang': checked out '6a00cbc4a9b8e68b71caf7f774b3f9c753ae84d5'
Submodule path 'bonsai/hll/vec': checked out 'd26da8847b4e225e3d6ccad85d1589a4345284f8'
Submodule 'blaze' (https://bitbucket.org/blaze-lib/blaze.git) registered for path 'bonsai/hll/vec/blaze'
Submodule 'sleef' (https://github.com/shibatch/sleef) registered for path 'bonsai/hll/vec/sleef'
Cloning into '/tmp/dashing/bonsai/hll/vec/blaze'...
remote: Counting objects: 176514, done.
remote: Compressing objects: 100% (21456/21456), done.
remote: Total 176514 (delta 153992), reused 176322 (delta 153863)
Receiving objects: 100% (176514/176514), 70.56 MiB | 9.34 MiB/s, done.
Resolving deltas: 100% (153992/153992), done.
Cloning into '/tmp/dashing/bonsai/hll/vec/sleef'...
remote: Enumerating objects: 42, done.
remote: Counting objects: 100% (42/42), done.
remote: Compressing objects: 100% (36/36), done.
remote: Total 3215 (delta 20), reused 17 (delta 6), pack-reused 3173
Receiving objects: 100% (3215/3215), 3.00 MiB | 2.37 MiB/s, done.
Resolving deltas: 100% (2436/2436), done.
Submodule path 'bonsai/hll/vec/blaze': checked out '620923485f3211cc30f63782017a8603c53f1ceb'
Submodule path 'bonsai/hll/vec/sleef': checked out '0b3c2edb5a0b53d2ffa1062c0fcb189ec20cedba'
Submodule path 'bonsai/hll/xxHash': checked out 'e22268617bb287e5b407b3c6cc29c1963c8d7c2d'
Submodule path 'bonsai/klib': checked out 'f719aad5fa273424fab4b0d884d68375b7cc2520'
Submodule path 'bonsai/kspp': checked out 'c567606ac21f8fabbdc4e4cbda4481b1452091d0'
Submodule 'klib' (https://github.com/attractivechaos/klib) registered for path 'bonsai/kspp/klib'
Cloning into '/tmp/dashing/bonsai/kspp/klib'...
remote: Enumerating objects: 44, done.
remote: Counting objects: 100% (44/44), done.
remote: Compressing objects: 100% (31/31), done.
remote: Total 1340 (delta 27), reused 30 (delta 13), pack-reused 1296
Receiving objects: 100% (1340/1340), 1.20 MiB | 1.18 MiB/s, done.
Resolving deltas: 100% (771/771), done.
Submodule path 'bonsai/kspp/klib': checked out 'f719aad5fa273424fab4b0d884d68375b7cc2520'
Submodule path 'bonsai/lazy': checked out 'c20343cb972a73bff676473a60c3bcb4818e52e6'
Submodule path 'bonsai/libpopcnt': checked out '0de541e96ee4c88e5bd28a0e941ac91e99c3b62f'
Submodule path 'bonsai/linear': checked out '0aa224367a0f09b5c3e5c90c715e3ff8fb2ffad3'
Submodule path 'bonsai/ntHash': checked out '65325bac67a840d2488908cfa266737297c159ff'
Submodule path 'bonsai/pdqsort': checked out '08879029ab8dcb80a70142acb709e3df02de5d37'
Submodule path 'bonsai/rollinghashcpp': checked out 'e68381300c074cbc6609a32367b9b7d93c65702e'
Submodule path 'bonsai/zlib': checked out 'cacf7f1d4e3d44d871b605da3b647f07d718623f'
Submodule path 'distmat': checked out '36f341c0231ef59ac546f5a6a37af74569884546'
Submodule 'pybind11' (https://github.com/pybind/pybind11) registered for path 'distmat/pybind11'
Cloning into '/tmp/dashing/distmat/pybind11'...
remote: Enumerating objects: 11332, done.
remote: Total 11332 (delta 0), reused 0 (delta 0), pack-reused 11332
Receiving objects: 100% (11332/11332), 4.16 MiB | 2.50 MiB/s, done.
Resolving deltas: 100% (7647/7647), done.
Submodule path 'distmat/pybind11': checked out '12e8774bc9aa4603136f2979088619b495850ca2'
Submodule 'tools/clang' (https://github.com/wjakob/clang-cindex-python3) registered for path 'distmat/pybind11/tools/clang'
Cloning into '/tmp/dashing/distmat/pybind11/tools/clang'...
remote: Enumerating objects: 8, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 361 (delta 2), reused 2 (delta 0), pack-reused 353
Receiving objects: 100% (361/361), 147.50 KiB | 367.00 KiB/s, done.
Resolving deltas: 100% (151/151), done.
Submodule path 'distmat/pybind11/tools/clang': checked out '6a00cbc4a9b8e68b71caf7f774b3f9c753ae84d5'
Submodule path 'khset': checked out 'e33b306a5260c5a1b8d1f5174385060bb98bcf90'
Submodule 'klib' (https://github.com/attractivechaos/klib) registered for path 'khset/klib'
Cloning into '/tmp/dashing/khset/klib'...
remote: Enumerating objects: 44, done.
remote: Counting objects: 100% (44/44), done.
remote: Compressing objects: 100% (31/31), done.
remote: Total 1340 (delta 27), reused 30 (delta 13), pack-reused 1296
Receiving objects: 100% (1340/1340), 1.20 MiB | 1.17 MiB/s, done.
Resolving deltas: 100% (771/771), done.
Submodule path 'khset/klib': checked out 'f719aad5fa273424fab4b0d884d68375b7cc2520'
Submodule path 'sketch': checked out '404dad2c6949a27121f8a2e9b4cd79dde1817647'
Submodule 'aesctr' (https://github.com/dnbaker/aesctr) registered for path 'sketch/aesctr'
Submodule 'circularqueue' (https://github.com/dnbaker/circularqueue) registered for path 'sketch/circularqueue'
Submodule 'compact_vector' (https://github.com/gmarcais/compact_vector) registered for path 'sketch/compact_vector'
Submodule 'flat_hash_map' (https://github.com/skarupke/flat_hash_map) registered for path 'sketch/flat_hash_map'
Submodule 'libpopcnt' (https://github.com/kimwalisch/libpopcnt) registered for path 'sketch/libpopcnt'
Submodule 'pybind11' (https://github.com/pybind/pybind11) registered for path 'sketch/pybind11'
Submodule 'vec' (https://github.com/dnbaker/vec) registered for path 'sketch/vec'
Submodule 'xxHash' (https://github.com/Cyan4973/xxHash) registered for path 'sketch/xxHash'
Cloning into '/tmp/dashing/sketch/aesctr'...
remote: Enumerating objects: 13, done.
remote: Counting objects: 100% (13/13), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 78 (delta 6), reused 11 (delta 4), pack-reused 65
Cloning into '/tmp/dashing/sketch/circularqueue'...
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 92 (delta 0), reused 1 (delta 0), pack-reused 91
Cloning into '/tmp/dashing/sketch/compact_vector'...
remote: Enumerating objects: 296, done.
remote: Total 296 (delta 0), reused 0 (delta 0), pack-reused 296
Receiving objects: 100% (296/296), 414.44 KiB | 625.00 KiB/s, done.
Resolving deltas: 100% (195/195), done.
Cloning into '/tmp/dashing/sketch/flat_hash_map'...
remote: Enumerating objects: 31, done.
remote: Total 31 (delta 0), reused 0 (delta 0), pack-reused 31
Cloning into '/tmp/dashing/sketch/vec'...
remote: Enumerating objects: 74, done.
remote: Counting objects: 100% (74/74), done.
remote: Compressing objects: 100% (56/56), done.
remote: Total 255 (delta 37), reused 52 (delta 18), pack-reused 181
Receiving objects: 100% (255/255), 66.30 KiB | 336.00 KiB/s, done.
Resolving deltas: 100% (148/148), done.
Cloning into '/tmp/dashing/sketch/libpopcnt'...
remote: Enumerating objects: 21, done.
remote: Counting objects: 100% (21/21), done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 825 (delta 9), reused 17 (delta 6), pack-reused 804
Receiving objects: 100% (825/825), 133.35 KiB | 86.00 KiB/s, done.
Resolving deltas: 100% (521/521), done.
Cloning into '/tmp/dashing/sketch/xxHash'...
remote: Enumerating objects: 2672, done.
remote: Total 2672 (delta 0), reused 0 (delta 0), pack-reused 2672
Receiving objects: 100% (2672/2672), 1.33 MiB | 1.25 MiB/s, done.
Resolving deltas: 100% (1581/1581), done.
Cloning into '/tmp/dashing/sketch/pybind11'...
remote: Enumerating objects: 11332, done.
remote: Total 11332 (delta 0), reused 0 (delta 0), pack-reused 11332
Receiving objects: 100% (11332/11332), 4.16 MiB | 2.95 MiB/s, done.
Resolving deltas: 100% (7649/7649), done.
Submodule path 'sketch/aesctr': checked out 'dbe690e8e903b873e6f2eb76d453da38e9fcba0b'
Submodule path 'sketch/circularqueue': checked out 'cbe02d8e4792cf0f3eaf24a5f69f217762dc076d'
Submodule path 'sketch/compact_vector': checked out 'e3bbd15290ac76b9732fab7b2d2a5c83ae01595e'
Submodule path 'sketch/flat_hash_map': checked out '2c4687431f978f02a3780e24b8b701d22aa32d9c'
Submodule path 'sketch/libpopcnt': checked out '0de541e96ee4c88e5bd28a0e941ac91e99c3b62f'
Submodule path 'sketch/pybind11': checked out '34c2281e315c51f5270321101dc733c1cf26214f'
Submodule 'tools/clang' (https://github.com/wjakob/clang-cindex-python3) registered for path 'sketch/pybind11/tools/clang'
Cloning into '/tmp/dashing/sketch/pybind11/tools/clang'...
remote: Enumerating objects: 8, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 361 (delta 2), reused 2 (delta 0), pack-reused 353
Receiving objects: 100% (361/361), 147.50 KiB | 367.00 KiB/s, done.
Resolving deltas: 100% (151/151), done.
Submodule path 'sketch/pybind11/tools/clang': checked out '6a00cbc4a9b8e68b71caf7f774b3f9c753ae84d5'
Submodule path 'sketch/vec': checked out 'd26da8847b4e225e3d6ccad85d1589a4345284f8'
Submodule 'blaze' (https://bitbucket.org/blaze-lib/blaze.git) registered for path 'sketch/vec/blaze'
Submodule 'sleef' (https://github.com/shibatch/sleef) registered for path 'sketch/vec/sleef'
Cloning into '/tmp/dashing/sketch/vec/blaze'...
remote: Counting objects: 176514, done.
remote: Compressing objects: 100% (21456/21456), done.
remote: Total 176514 (delta 153994), reused 176322 (delta 153863)
Receiving objects: 100% (176514/176514), 70.56 MiB | 9.53 MiB/s, done.
Resolving deltas: 100% (153994/153994), done.
Cloning into '/tmp/dashing/sketch/vec/sleef'...
remote: Enumerating objects: 42, done.
remote: Counting objects: 100% (42/42), done.
remote: Compressing objects: 100% (36/36), done.
remote: Total 3215 (delta 20), reused 17 (delta 6), pack-reused 3173
Receiving objects: 100% (3215/3215), 3.00 MiB | 2.21 MiB/s, done.
Resolving deltas: 100% (2436/2436), done.
Submodule path 'sketch/vec/blaze': checked out '620923485f3211cc30f63782017a8603c53f1ceb'
Submodule path 'sketch/vec/sleef': checked out '0b3c2edb5a0b53d2ffa1062c0fcb189ec20cedba'
Submodule path 'sketch/xxHash': checked out 'e22268617bb287e5b407b3c6cc29c1963c8d7c2d'
cp bonsai/zlib/libz.a libz.a || (cd bonsai/zlib && ./configure && make && cd ../.. && cp bonsai/zlib/libz.a libz.a)
ls libzstd.a || (cd bonsai && make libzstd.a && cp libzstd.a ../)
cd bonsai && make libzstd.a
cd bonsai && make libzstd.a
cd bonsai && make libzstd.a
cd bonsai && make libzstd.a
cd bonsai && make libzstd.a
cd bonsai && make clhash.o && cd ..
cp: cannot stat 'bonsai/zlib/libz.a': No such file or directory
make[1]: Entering directory '/tmp/dashing/bonsai'
make[1]: Entering directory '/tmp/dashing/bonsai'
make[1]: Entering directory '/tmp/dashing/bonsai'
make[1]: Entering directory '/tmp/dashing/bonsai'
make[1]: Entering directory '/tmp/dashing/bonsai'
make[1]: Entering directory '/tmp/dashing/bonsai'
ls: cannot access 'libzstd.a': No such file or directory
make[1]: Entering directory '/tmp/dashing/bonsai'
git clone --recursive --single-branch --branch dev https://github.com/facebook/zstd
git clone --recursive --single-branch --branch dev https://github.com/facebook/zstd
git clone --recursive --single-branch --branch dev https://github.com/facebook/zstd
git clone --recursive --single-branch --branch dev https://github.com/facebook/zstd
git clone --recursive --single-branch --branch dev https://github.com/facebook/zstd
Cloning into 'zstd'...
fatal: destination path 'zstd' already exists and is not an empty directory.
make[1]: *** [Makefile:83: zstd/lib] Error 128
make[1]: Leaving directory '/tmp/dashing/bonsai'
fatal: destination path 'zstd' already exists and is not an empty directory.
git clone --recursive --single-branch --branch dev https://github.com/facebook/zstd
make[1]: *** [Makefile:83: zstd/lib] Error 128
make[1]: Leaving directory '/tmp/dashing/bonsai'
fatal: destination path 'zstd' already exists and is not an empty directory.
make[1]: *** [Makefile:83: zstd/lib] Error 128
make[1]: Leaving directory '/tmp/dashing/bonsai'
fatal: destination path 'zstd' already exists and is not an empty directory.
make[1]: *** [Makefile:83: zstd/lib] Error 128
make[1]: Leaving directory '/tmp/dashing/bonsai'
fatal: destination path 'zstd' already exists and is not an empty directory.
make[1]: *** [Makefile:83: zstd/lib] Error 128
make[1]: Leaving directory '/tmp/dashing/bonsai'
ls clhash.o 2>/dev/null || mv clhash/clhash.o . 2>/dev/null || (cd clhash && git checkout master && make && cd .. && ln -s clhash/clhash.o .)
make: *** [Makefile:123: bonsai/zstd/zlibWrapper/gzclose.c] Error 2
make: *** Waiting for unfinished jobs....
make: *** [Makefile:123: bonsai/zstd/zlibWrapper/gzlib.c] Error 2
make: *** [Makefile:123: bonsai/zstd/zlibWrapper/gzread.c] Error 2
make: *** [Makefile:123: bonsai/zstd/zlibWrapper/gzwrite.c] Error 2
make: *** [Makefile:81: libzstd.a] Error 2
Checking for gcc...
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
make[2]: Entering directory '/tmp/dashing/bonsai/clhash'
cc -fPIC -std=c99 -O3 -msse4.2 -mpclmul -march=native -funroll-loops -Wstrict-overflow -Wstrict-aliasing -Wall -Wextra -pedantic -Wshadow -c ./src/clhash.c -Iinclude
Checking for shared library support...
remote: Enumerating objects: 27, done.
remote: Counting objects: 100% (27/27), done.
remote: Compressing objects: 100% (4/4), done.
Building shared library libz.so.1.2.11 with gcc.
Checking for size_t... Yes.36/40755), 1.45 MiB | 1.38 MiB/s s
Checking for off64_t... Yes.4/40755), 1.45 MiB | 1.38 MiB/s
Checking for fseeko... Yes.
cc -fPIC -std=c99 -O3 -msse4.2 -mpclmul -march=native -funroll-loops -Wstrict-overflow -Wstrict-aliasing -Wall -Wextra -pedantic -Wshadow -o unit ./tests/unit.c -Iinclude clhash.o
g++ -fPIC -std=c++11 -O3 -msse4.2 -mpclmul -march=native -funroll-loops -Wstrict-overflow -Wstrict-aliasing -Wall -Wextra -pedantic -Wshadow -o cppunit ./tests/cppunit.cpp -Iinclude clhash.o
cc -fPIC -std=c99 -O3 -msse4.2 -mpclmul -march=native -funroll-loops -Wstrict-overflow -Wstrict-aliasing -Wall -Wextra -pedantic -Wshadow -o benchmark ./benchmarks/benchmark.c -Iinclude clhash.o
cc -fPIC -std=c99 -O3 -msse4.2 -mpclmul -march=native -funroll-loops -Wstrict-overflow -Wstrict-aliasing -Wall -Wextra -pedantic -Wshadow -o example example.c -Iinclude clhash.o
g++ -fPIC -std=c++11 -O3 -msse4.2 -mpclmul -march=native -funroll-loops -Wstrict-overflow -Wstrict-aliasing -Wall -Wextra -pedantic -Wshadow -o cppexample cppexample.cpp -Iinclude clhash.o
Checking for strerror... Yes.0/40755), 5.81 MiB | 3.75 MiB/s
Checking for unistd.h... Yes.9/40755), 5.81 MiB | 3.75 MiB/s
Checking for stdarg.h... Yes.0/40755), 12.21 MiB | 5.96 MiB/s
remote: Total 40755 (delta 23), reused 23 (delta 23), pack-reused 40728
Receiving objects: 100% (40755/40755), 20.97 MiB | 7.66 MiB/s, done.
Checking whether to use vs[n]printf() or s[n]printf()... using vs[n]printf().
Checking for vsnprintf() in stdio.h... Yes.
Checking for return value of vsnprintf()... Yes.
Checking for attribute(visibility) support... Yes.
make[1]: Entering directory '/tmp/dashing/bonsai/zlib'
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -c -o example.o test/example.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o adler32.o adler32.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o crc32.o crc32.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o deflate.o deflate.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o infback.o infback.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o inffast.o inffast.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o inflate.o inflate.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o inftrees.o inftrees.c
Resolving deltas: 100% (30063/30063), done.
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o trees.o trees.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o zutil.o zutil.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o compress.o compress.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o uncompr.o uncompr.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzclose.o gzclose.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzlib.o gzlib.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzread.o gzread.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzwrite.o gzwrite.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -c -o minigzip.o test/minigzip.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/adler32.o adler32.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/crc32.o crc32.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/infback.o infback.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/deflate.o deflate.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/inffast.o inffast.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/inflate.o inflate.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/inftrees.o inftrees.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/trees.o trees.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/zutil.o zutil.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/compress.o compress.c
make[2]: Leaving directory '/tmp/dashing/bonsai/clhash'
make[1]: Leaving directory '/tmp/dashing/bonsai'
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/uncompr.o uncompr.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzclose.o gzclose.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzlib.o gzlib.c
cd zstd && make lib && mv lib/libzstd.a .. && cd ..
make[2]: Entering directory '/tmp/dashing/bonsai/zstd'
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -D_FILE_OFFSET_BITS=64 -c -o example64.o test/example.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzread.o gzread.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzwrite.o gzwrite.c
make[3]: Entering directory '/tmp/dashing/bonsai/zstd/lib'
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -D_FILE_OFFSET_BITS=64 -c -o minigzip64.o test/minigzip.c
ar rc libz.a adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o example example.o -L. libz.a
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o minigzip minigzip.o -L. libz.a
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o example64 example64.o -L. libz.a
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o minigzip64 minigzip64.o -L. libz.a
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/debug.o common/debug.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/entropy_common.o common/entropy_common.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/error_private.o common/error_private.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/fse_decompress.o common/fse_decompress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/pool.o common/pool.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/threading.o common/threading.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/xxhash.o common/xxhash.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/zstd_common.o common/zstd_common.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/fse_compress.o compress/fse_compress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/hist.o compress/hist.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/huf_compress.o compress/huf_compress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_compress.o compress/zstd_compress.c
gcc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o libz.so.1.2.11 adler32.lo crc32.lo deflate.lo infback.lo inffast.lo inflate.lo inftrees.lo trees.lo zutil.lo compress.lo uncompr.lo gzclose.lo gzlib.lo gzread.lo gzwrite.lo -lc
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_compress_literals.o compress/zstd_compress_literals.c
rm -f libz.so libz.so.1
ln -s libz.so.1.2.11 libz.so
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_compress_sequences.o compress/zstd_compress_sequences.c
ln -s libz.so.1.2.11 libz.so.1
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_compress_superblock.o compress/zstd_compress_superblock.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o examplesh example.o -L. libz.so.1.2.11
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_double_fast.o compress/zstd_double_fast.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o minigzipsh minigzip.o -L. libz.so.1.2.11
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_fast.o compress/zstd_fast.c
make[1]: Leaving directory '/tmp/dashing/bonsai/zlib'
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_lazy.o compress/zstd_lazy.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_ldm.o compress/zstd_ldm.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_opt.o compress/zstd_opt.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstdmt_compress.o compress/zstdmt_compress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o decompress/huf_decompress.o decompress/huf_decompress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o decompress/zstd_ddict.o decompress/zstd_ddict.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o decompress/zstd_decompress.o decompress/zstd_decompress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o decompress/zstd_decompress_block.o decompress/zstd_decompress_block.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o deprecated/zbuff_common.o deprecated/zbuff_common.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o deprecated/zbuff_compress.o deprecated/zbuff_compress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o deprecated/zbuff_decompress.o deprecated/zbuff_decompress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o dictBuilder/cover.o dictBuilder/cover.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o dictBuilder/divsufsort.o dictBuilder/divsufsort.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o dictBuilder/fastcover.o dictBuilder/fastcover.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o dictBuilder/zdict.o dictBuilder/zdict.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o legacy/zstd_v05.o legacy/zstd_v05.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o legacy/zstd_v06.o legacy/zstd_v06.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o legacy/zstd_v07.o legacy/zstd_v07.c
compiling dynamic library 1.4.5
compiling static library
creating versioned links
make[3]: Leaving directory '/tmp/dashing/bonsai/zstd/lib'
make[2]: Leaving directory '/tmp/dashing/bonsai/zstd'
make[1]: Leaving directory '/tmp/dashing/bonsai'
rm bonsai/zstd/zlibWrapper/gzlib.c bonsai/zstd/zlibWrapper/gzclose.c bonsai/zstd/zlibWrapper/gzread.c bonsai/zstd/zlibWrapper/gzwrite.c bonsai/zstd/zlibWrapper/zstd_zlibwrapper.c
ben@ben:/tmp/dashing/release/linux$ ./dashing_s128 cmp -M ~/git/galah-ben/tests/data/abisko4/*fna
Dashing version: v0.4.2
Illegal instruction (core dumped)
ben@ben:/tmp/dashing/release/linux$ ./dashing_s256 cmp -M ~/git/galah-ben/tests/data/abisko4/*fna
Dashing version: v0.4.2
Illegal instruction (core dumped)
ben@ben:/tmp/dashing/release/linux$ ./dashing_s512 cmp -M ~/git/galah-ben/tests/data/abisko4/*fna
Illegal instruction (core dumped)
Try make
again for the git repo, sometimes a second invocation helps. (I think it's a race condition in the Makefile due to the zlib.)
What's your OS? We've tried under Arch, Ubuntu and CentOS.
I'm on Ubuntu 18.04. I have another 18.04 install on a newer laptop and that works fine, I guess because it has the required instructions.
I seem to be having problems with zlib, as you say. But not sure it is a race condition since it still occurs without -j
:
ben@ben:/tmp/dashing$ make clean
rm -f sketchcorekhs sketchcorecbbmh sketchcmpbbmh readfilt finalizers sketchcmpbf sketchcmphll sketchcmprmh sketchcmpkhs hllmain sketchcorebbmh sketchcorebf sketchcorermh sketchcorehll sketchcmpcrmh construct mkdistmain union sketchcmpsmh unionsz sketchcoresmh cardests sketchcorecrmh main distmain dashing sketchcorekhs_d sketchcorecbbmh_d sketchcmpbbmh_d readfilt_d finalizers_d sketchcmpbf_d sketchcmphll_d sketchcmprmh_d sketchcmpkhs_d hllmain_d sketchcorebbmh_d sketchcorebf_d sketchcorermh_d sketchcorehll_d sketchcmpcrmh_d construct_d mkdistmain_d union_d sketchcmpsmh_d unionsz_d sketchcoresmh_d cardests_d sketchcorecrmh_d main_d distmain_d dashing_d libzstd.a bonsai/clhash.o clhash.o \
bonsai/klib/kthread.o bonsai/klib/kstring.o libgomp.a \
&& cd bonsai/zstd && make clean && cd ../zlib && make clean && cd ../.. \
&& rm -f libz.* && rm -f dashing.a
make[1]: Entering directory '/tmp/dashing/bonsai/zstd'
Cleaning completed
make[1]: Leaving directory '/tmp/dashing/bonsai/zstd'
make[1]: Entering directory '/tmp/dashing/bonsai/zlib'
rm -f *.o *.lo *~ \
example minigzip examplesh minigzipsh \
example64 minigzip64 \
infcover \
libz.* foo.gz so_locations \
_match.s maketree contrib/infback9/*.o
rm -rf objs
rm -f *.gcda *.gcno *.gcov
rm -f contrib/infback9/*.gcda contrib/infback9/*.gcno contrib/infback9/*.gcov
make[1]: Leaving directory '/tmp/dashing/bonsai/zlib'
ben@ben:/tmp/dashing$ make
cp bonsai/zlib/libz.a libz.a || (cd bonsai/zlib && ./configure && make && cd ../.. && cp bonsai/zlib/libz.a libz.a)
cp: cannot stat 'bonsai/zlib/libz.a': No such file or directory
Checking for gcc...
Checking for shared library support...
Building shared library libz.so.1.2.11 with gcc.
Checking for size_t... Yes.
Checking for off64_t... Yes.
Checking for fseeko... Yes.
Checking for strerror... Yes.
Checking for unistd.h... Yes.
Checking for stdarg.h... Yes.
Checking whether to use vs[n]printf() or s[n]printf()... using vs[n]printf().
Checking for vsnprintf() in stdio.h... Yes.
Checking for return value of vsnprintf()... Yes.
Checking for attribute(visibility) support... Yes.
make[1]: Entering directory '/tmp/dashing/bonsai/zlib'
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -c -o example.o test/example.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o adler32.o adler32.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o crc32.o crc32.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o deflate.o deflate.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o infback.o infback.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o inffast.o inffast.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o inflate.o inflate.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o inftrees.o inftrees.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o trees.o trees.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o zutil.o zutil.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o compress.o compress.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o uncompr.o uncompr.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzclose.o gzclose.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzlib.o gzlib.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzread.o gzread.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzwrite.o gzwrite.c
ar rc libz.a adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o example example.o -L. libz.a
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -c -o minigzip.o test/minigzip.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o minigzip minigzip.o -L. libz.a
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/adler32.o adler32.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/crc32.o crc32.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/deflate.o deflate.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/infback.o infback.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/inffast.o inffast.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/inflate.o inflate.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/inftrees.o inftrees.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/trees.o trees.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/zutil.o zutil.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/compress.o compress.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/uncompr.o uncompr.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzclose.o gzclose.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzlib.o gzlib.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzread.o gzread.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzwrite.o gzwrite.c
gcc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o libz.so.1.2.11 adler32.lo crc32.lo deflate.lo infback.lo inffast.lo inflate.lo inftrees.lo trees.lo zutil.lo compress.lo uncompr.lo gzclose.lo gzlib.lo gzread.lo gzwrite.lo -lc
rm -f libz.so libz.so.1
ln -s libz.so.1.2.11 libz.so
ln -s libz.so.1.2.11 libz.so.1
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o examplesh example.o -L. libz.so.1.2.11
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o minigzipsh minigzip.o -L. libz.so.1.2.11
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -D_FILE_OFFSET_BITS=64 -c -o example64.o test/example.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o example64 example64.o -L. libz.a
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -D_FILE_OFFSET_BITS=64 -c -o minigzip64.o test/minigzip.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o minigzip64 minigzip64.o -L. libz.a
make[1]: Leaving directory '/tmp/dashing/bonsai/zlib'
ls libzstd.a || (cd bonsai && make libzstd.a && cp libzstd.a ../)
ls: cannot access 'libzstd.a': No such file or directory
make[1]: Entering directory '/tmp/dashing/bonsai'
cd zstd && make lib && mv lib/libzstd.a .. && cd ..
make[2]: Entering directory '/tmp/dashing/bonsai/zstd'
make[3]: Entering directory '/tmp/dashing/bonsai/zstd/lib'
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/debug.o common/debug.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/entropy_common.o common/entropy_common.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/error_private.o common/error_private.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/fse_decompress.o common/fse_decompress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/pool.o common/pool.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/threading.o common/threading.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/xxhash.o common/xxhash.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o common/zstd_common.o common/zstd_common.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/fse_compress.o compress/fse_compress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/hist.o compress/hist.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/huf_compress.o compress/huf_compress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_compress.o compress/zstd_compress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_compress_literals.o compress/zstd_compress_literals.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_compress_sequences.o compress/zstd_compress_sequences.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_compress_superblock.o compress/zstd_compress_superblock.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_double_fast.o compress/zstd_double_fast.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_fast.o compress/zstd_fast.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_lazy.o compress/zstd_lazy.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_ldm.o compress/zstd_ldm.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstd_opt.o compress/zstd_opt.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o compress/zstdmt_compress.o compress/zstdmt_compress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o decompress/huf_decompress.o decompress/huf_decompress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o decompress/zstd_ddict.o decompress/zstd_ddict.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o decompress/zstd_decompress.o decompress/zstd_decompress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o decompress/zstd_decompress_block.o decompress/zstd_decompress_block.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o deprecated/zbuff_common.o deprecated/zbuff_common.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o deprecated/zbuff_compress.o deprecated/zbuff_compress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o deprecated/zbuff_decompress.o deprecated/zbuff_decompress.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o dictBuilder/cover.o dictBuilder/cover.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o dictBuilder/divsufsort.o dictBuilder/divsufsort.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o dictBuilder/fastcover.o dictBuilder/fastcover.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o dictBuilder/zdict.o dictBuilder/zdict.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o legacy/zstd_v05.o legacy/zstd_v05.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o legacy/zstd_v06.o legacy/zstd_v06.c
cc -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef -Wpointer-arith -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings -Wredundant-decls -Wmissing-prototypes -Wc++-compat -I. -I./common -DXXH_NAMESPACE=ZSTD_ -I./legacy -DZSTD_LEGACY_SUPPORT=5 -c -o legacy/zstd_v07.o legacy/zstd_v07.c
compiling static library
compiling dynamic library 1.4.5
creating versioned links
make[3]: Leaving directory '/tmp/dashing/bonsai/zstd/lib'
make[2]: Leaving directory '/tmp/dashing/bonsai/zstd'
make[1]: Leaving directory '/tmp/dashing/bonsai'
g++ -O3 -funroll-loops -pipe -fno-strict-aliasing -march=native -mpclmul -DUSE_PDQSORT -DNOT_THREADSAFE -flto -fopenmp -fno-rtti -std=c++14 -Wall -Wextra -Wno-char-subscripts -Wpointer-arith -Wwrite-strings -Wdisabled-optimization -Wformat -Wcast-align -Wno-unused-function -Wno-unused-parameter -pedantic -Wunused-variable -Wno-attributes -Wno-pedantic -Wno-ignored-attributes -Wno-missing-braces -Wno-unknown-pragmas -DDASHING_VERSION=\"v0.4.3\" -Ibonsai/clhash/include -I. -Ibonsai/zlib -Ibonsai/libpopcnt -Iinclude -Ibonsai/circularqueue -Ibonsai/zstd/zlibWrapper -Ibonsai/zstd/lib/common -Ibonsai/zstd/lib -Isketch/vec -Ibonsai -Ibonsai/include/ -Isketch/include -Isketch -Isketch/include/sketch -Isketch/vec -L. -Lbonsai/zlib -c -O3 src/dashing.cpp libz.a -o src/dashing.o -DZWRAP_USE_ZSTD=1 -lzstd -lz -DNDEBUG
g++: warning: libz.a: linker input file unused because linking not done
cd bonsai && make libzstd.a
make[1]: Entering directory '/tmp/dashing/bonsai'
cd zstd && make lib && mv lib/libzstd.a .. && cd ..
make[2]: Entering directory '/tmp/dashing/bonsai/zstd'
make[3]: Entering directory '/tmp/dashing/bonsai/zstd/lib'
compiling static library
make[3]: Leaving directory '/tmp/dashing/bonsai/zstd/lib'
make[2]: Leaving directory '/tmp/dashing/bonsai/zstd'
make[1]: Leaving directory '/tmp/dashing/bonsai'
cd bonsai && make libzstd.a && cd zstd && make lib && cd zlibWrapper && make gzclose.o
make[1]: Entering directory '/tmp/dashing/bonsai'
cd zstd && make lib && mv lib/libzstd.a .. && cd ..
make[2]: Entering directory '/tmp/dashing/bonsai/zstd'
make[3]: Entering directory '/tmp/dashing/bonsai/zstd/lib'
compiling static library
make[3]: Leaving directory '/tmp/dashing/bonsai/zstd/lib'
make[2]: Leaving directory '/tmp/dashing/bonsai/zstd'
make[1]: Leaving directory '/tmp/dashing/bonsai'
make[1]: Entering directory '/tmp/dashing/bonsai/zstd'
make[2]: Entering directory '/tmp/dashing/bonsai/zstd/lib'
compiling static library
make[2]: Leaving directory '/tmp/dashing/bonsai/zstd/lib'
make[1]: Leaving directory '/tmp/dashing/bonsai/zstd'
make[1]: Entering directory '/tmp/dashing/bonsai/zstd/zlibWrapper'
make[1]: *** No rule to make target 'gzclose.o'. Stop.
make[1]: Leaving directory '/tmp/dashing/bonsai/zstd/zlibWrapper'
make: *** [Makefile:135: bonsai/zstd/zlibWrapper/gzclose.o] Error 2
Hi,
It seems that dashing_128 was using AVX registers, even though avx2 was disabled. This modified version might work now. And I've modified how zstd is built, so if that doesn't work, I'd recommend cloning from scratch and trying to recompile.
Sorry for the hassle, and thanks again for the feedback.
Hi,
That modified version threw an illegal instruction.
The make -j 8 dashing
after a fresh clone failed, but then running make dashing
after that did work, as you suggested before. Also, the ./dashing
it created worked without throwing an illegal instruction.
Glad to hear it! I was also able to find what was causing the problem in parallel build. (-j20
was fine, at least.) I've rebuilt the static builds as well. I don't know if it would fix your issue, but there are at least no uses of ymm registers.
Thanks, afraid I still see dashing_s128 throwing an illegal instruction error though.
Hi,
Unfortunately it seems like dashing 0.4.0 from bioconda still fails with illegal instruction. I wonder if simply updating the bioconda package to the newest version might help things? Thanks.
Hi ben,
Sure, let me try to get some updates into conda. Last I was working with them, the build was a bit more complex than they tend to prefer (due to simd detection), and I'll update the builtin binaries as well.
Thanks for letting me know.
Daniel
Thanks for the efforts. Ideally, would it be possible to compile dashing in such a way that there is only a single binary, but one that calls different compiled code based on what instruction set it finds at runtime? I believe https://github.com/bbuchfink/diamond does this (both in distributed binary and through conda), for instance, but could be wrong.
I think it's Diamond is compiling from source by specifying architecture, e.g., https://github.com/bbuchfink/diamond/blob/master/Dockerfile#L11, which is simply using cmake and building for bare x86-64 (https://github.com/bioconda/bioconda-recipes/blob/master/recipes/diamond/build.sh).
I'll work with bioconda again for an update; it should be able to just clone recursively and make.
And I've updated the statically-linked binaries here, which I'll merge into main assuming that CI tests pass.
I've seen some tools that use fat binaries and select at runtime, but some OS's don't like running executables with any unsupported operations. And the way that Dashing is written, it would be difficult to separate every function using SIMD that way. I think the easiest way would be to install a wrapper script and all statically-linked binaries as a Python package; I'll think about that.
tl;dr:
Binaries are updated as of this commit, and I'll work with bioconda for updated releases as well as consider a the wrapper script in the next couple of weeks.
re diamond, I think that you are right - without bothering to dig through the source code, at http://www.diamondsearch.org/index.php?pages/installation/ it says
DIAMOND compiles as generic C++ code and has no particular requirements on the hardware architecture, but it makes use of the SSE instruction set of the Intel/AMD x86-64 platform if available and will run considerably faster on that platform.
which suggests it looks for architecture at runtime.
At the bioconda build file https://github.com/bioconda/bioconda-recipes/blob/master/recipes/diamond/build.sh it removes the -march=native
to maximise compatibility - not sure what the docker file has to do with anything.
Anyway, that is all of little help to here, if choosing at runtime is hard to code. I had the impression that anaconda could build for multiple architectures, but am not sure on the specifics - python wrapper sounds fine though sounds like you'd be re-inventing the wheel somewhat (though more useful for non-bioconda peoples).
Instead of asking for a recursive git clone you might also just release a proper source archive, not just the one github auto-generates, and then bioconda can grab that.
Anyway, I'll stop typing half-random thoughts now. Thanks.
Hi,
I test dashing v0.4.0 installed from bioconda, still have the problem: Illegal instruction
.
But when I try dashing_128 and dashing_256 from the git repo release, it work, dashing_512 can't work.
Server info:
~|___(0.0) lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 48
On-line CPU(s) list: 0-47
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 48
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 61
Model name: Intel Core Processor (Broadwell)
Stepping: 2
CPU MHz: 1995.191
BogoMIPS: 3990.38
Hypervisor vendor: KVM
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 4096K
NUMA node0 CPU(s): 0-47
and:
~|___(0.0) gcc -march=native -dM -E - < /dev/null | grep -i "SSE\|AVX" | sort
#define __AVX__ 1
#define __AVX2__ 1
#define __core_avx2 1
#define __core_avx2__ 1
#define __SSE__ 1
#define __SSE2__ 1
#define __SSE2_MATH__ 1
#define __SSE3__ 1
#define __SSE4_1__ 1
#define __SSE4_2__ 1
#define __SSE_MATH__ 1
#define __SSSE3__ 1
#define __tune_core_avx2__ 1
Thanks.
Hi alienzj --
Thanks for the report! I'll give it a look. The flags should help. I'm not surprised that 512 failed, since your machine doesn't have avx512 support.
In the meantime, can you try git clone --recursive https://github.com/dnbaker/dashing && cd dashing && make dashing
for a manual installation?
Also, on this matter, I'm planning on using a wrapper like MMSeqs2's script which compiles every possible version and uses a script to select the correct hardware version, which I'll be working on in the next week or so.
Hi again,
Sorry to bring this old thing up again. Unfortunately dashing in conda (v1.0) is a regression - I'm getting illegal instruction on EPYC servers, and dashing v2 doesn't appear to have a bioconda package at all. v0.4.0 on bioconda works though, hence why I say regression.
It would be great if the package could choose the correct architecture at runtime e.g. like DIAMOND does.
Thanks, ben
Hi Ben,
I agree - it would be nice. It would be possible to put together a wrapper that selects the right version.
And thanks for letting me know about illegal instruction on EPYC; the 256-bit vector version should work on it, but if it's not there's a bug. I'll see if I can figure out what the problem is. If I can't find it, I'll comb through the binary for a wrong instruction.
When I get time, I'll try to set up bioconda for Dashing2. Hopefully it's a bit more flexible than it was the last time I tried.
Thanks,
Daniel
If you have time, could you try the s256 binary from this folder on your EPYC server? I tried something that might have fixed the problem, but I don't have one to test on.
HI, thanks for the quick reply and fix. That s256 exe seems good to me. I guess the idea is to make a new release?
Hi,
Trying to use dashing as it seems very useful, thanks.
Not sure if this issue belongs here but on my system the bioconda install gives an illegal instruction error:
Specifically I have
installed. I presume this is an issue with dashing compilation itself, but not 100% sure on that.
Any suggestions? On my other computer it works without issue. If it helps this is my cpu specs
Thanks, ben.