@@ -74,16 +74,26 @@ jobs:
7474 STATIC : 1
7575 MPI : 0
7676 BUILD_TYPE : Release
77+ ARTIFACT : ' mmseqs-linux-AVX2'
7778 sse41 :
7879 SIMD : ' SSE4_1'
7980 STATIC : 1
8081 MPI : 0
8182 BUILD_TYPE : Release
83+ ARTIFACT : ' mmseqs-linux-SSE4_1'
8284 sse2 :
8385 SIMD : ' SSE2'
8486 STATIC : 1
8587 MPI : 0
8688 BUILD_TYPE : Release
89+ ARTIFACT : ' mmseqs-linux-SSE2'
90+ avx2_int64 :
91+ SIMD : ' AVX2'
92+ STATIC : 1
93+ MPI : 0
94+ BUILD_TYPE : Release
95+ INT64 : 1
96+ ARTIFACT : ' mmseqs-linux-AVX2-64bit'
8797 avx2_mpi :
8898 SIMD : ' AVX2'
8999 STATIC : 0
@@ -112,14 +122,20 @@ jobs:
112122 - script : |
113123 mkdir build && cd build
114124 export CC=gcc-11 ; export CXX=g++-11
125+ EXTRA=""
126+ WERROR="-DENABLE_WERROR=1"
127+ if [ "${INT64}" = "1" ]; then
128+ EXTRA="-DMMSEQS_INT64_IDS=1"
129+ WERROR="" # 64-bit-ID build not yet vetted warning-clean under -Werror
130+ fi
115131 if [ "${STATIC}" -eq "1" ]; then
116132 LIBGOMP=/usr/lib/gcc/x86_64-linux-gnu/11
117133 cmake -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DFORCE_STATIC_DEPS=1 -DHAVE_TESTS=1 \
118134 -DOpenMP_C_FLAGS="-fopenmp -I${LIBGOMP}" -DOpenMP_C_LIB_NAMES=gomp -DOpenMP_CXX_FLAGS="-fopenmp -I${LIBGOMP}" -DOpenMP_CXX_LIB_NAMES=gomp -DOpenMP_gomp_LIBRARY=${LIBGOMP}/libgomp.a \
119- -DENABLE_WERROR=1 -DHAVE_${SIMD}=1 -DHAVE_MPI=${MPI} ..
135+ ${WERROR} ${EXTRA} -DHAVE_${SIMD}=1 -DHAVE_MPI=${MPI} ..
120136 else
121137 cmake -DHAVE_SANITIZER=1 -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DHAVE_TESTS=1 \
122- -DENABLE_WERROR=1 -DHAVE_${SIMD}=1 -DHAVE_MPI=${MPI} ..
138+ ${WERROR} ${EXTRA} -DHAVE_${SIMD}=1 -DHAVE_MPI=${MPI} ..
123139 fi
124140
125141 make -j $(nproc --all) VERBOSE=1
@@ -133,42 +149,7 @@ jobs:
133149 condition : eq(variables['STATIC'], 1)
134150 inputs :
135151 targetPath : $(Build.SourcesDirectory)/build/src/mmseqs
136- artifactName : mmseqs-linux-$(SIMD)
137-
138- - job : build_ubuntu_int64
139- displayName : Ubuntu MMseqs2 64-bit IDs
140- pool :
141- vmImage : ' Ubuntu-22.04'
142- timeoutInMinutes : 120
143- steps :
144- - checkout : self
145- submodules : true
146- - script : |
147- sudo apt-get update
148- sudo apt-get install -y gcc-11 g++-11 libgcc-11-dev rustc cargo build-essential
149- retryCountOnTaskFailure: "2"
150- displayName: Install newer G++
151- - script : |
152- mkdir build && cd build
153- export CC=gcc-11 ; export CXX=g++-11
154- LIBGOMP=/usr/lib/gcc/x86_64-linux-gnu/11
155- # NOTE: -DENABLE_WERROR is intentionally omitted; the 64-bit-ID build has
156- # not yet been vetted warning-clean under -Werror. Add it once it is.
157- cmake -DCMAKE_BUILD_TYPE=Release -DFORCE_STATIC_DEPS=1 -DHAVE_TESTS=1 \
158- -DMMSEQS_INT64_IDS=1 \
159- -DOpenMP_C_FLAGS="-fopenmp -I${LIBGOMP}" -DOpenMP_C_LIB_NAMES=gomp -DOpenMP_CXX_FLAGS="-fopenmp -I${LIBGOMP}" -DOpenMP_CXX_LIB_NAMES=gomp -DOpenMP_gomp_LIBRARY=${LIBGOMP}/libgomp.a \
160- -DHAVE_AVX2=1 -DHAVE_MPI=0 ..
161- make -j $(nproc --all) VERBOSE=1
162- displayName: Build MMseqs2 (64-bit IDs)
163- - script : |
164- export TTY=0
165- ${BUILD_SOURCESDIRECTORY}/util/regression/run_regression.sh ${BUILD_SOURCESDIRECTORY}/build/src/mmseqs ${BUILD_SOURCESDIRECTORY}/regression
166- displayName: Run Regression Suite
167- condition: eq(variables['regression'], 1)
168- - task : PublishPipelineArtifact@0
169- inputs :
170- targetPath : $(Build.SourcesDirectory)/build/src/mmseqs
171- artifactName : mmseqs-linux-avx2-64bit
152+ artifactName : $(ARTIFACT)
172153
173154 - job : build_ubuntu_gpu
174155 displayName : Ubuntu MMseqs2 GPU
@@ -461,6 +442,18 @@ jobs:
461442 archiveFile : $(Build.SourcesDirectory)/mmseqs-linux-arm64.tar.gz
462443 includeRootFolder : true
463444 archiveType : tar
445+ - task : DownloadPipelineArtifact@1
446+ inputs :
447+ artifactName : mmseqs-linux-AVX2-64bit
448+ targetPath : $(Build.SourcesDirectory)/mmseqs/bin
449+ - script :
450+ chmod +x "${BUILD_SOURCESDIRECTORY}/mmseqs/bin/mmseqs"
451+ - task : ArchiveFiles@2
452+ inputs :
453+ rootFolderOrFile : $(Build.SourcesDirectory)/mmseqs
454+ archiveFile : $(Build.SourcesDirectory)/mmseqs-linux-avx2-64bit.tar.gz
455+ includeRootFolder : true
456+ archiveType : tar
464457 - script :
465458 rm "${BUILD_SOURCESDIRECTORY}/mmseqs/bin/mmseqs"
466459 # - task: DownloadPipelineArtifact@1
@@ -496,6 +489,7 @@ jobs:
496489 mmseqs-linux-sse2.tar.gz \
497490 mmseqs-linux-sse41.tar.gz \
498491 mmseqs-linux-avx2.tar.gz \
492+ mmseqs-linux-avx2-64bit.tar.gz \
499493 mmseqs-linux-gpu.tar.gz \
500494 mmseqs-linux-gpu-cuda13.tar.gz \
501495 mmseqs-linux-gpu-arm64.tar.gz \
@@ -507,6 +501,7 @@ jobs:
507501 -F file[]=@mmseqs-linux-sse2.tar.gz -F signature[]=@mmseqs-linux-sse2.tar.gz.sig \
508502 -F file[]=@mmseqs-linux-sse41.tar.gz -F signature[]=@mmseqs-linux-sse41.tar.gz.sig \
509503 -F file[]=@mmseqs-linux-avx2.tar.gz -F signature[]=@mmseqs-linux-avx2.tar.gz.sig \
504+ -F file[]=@mmseqs-linux-avx2-64bit.tar.gz -F signature[]=@mmseqs-linux-avx2-64bit.tar.gz.sig \
510505 -F file[]=@mmseqs-linux-gpu.tar.gz -F signature[]=@mmseqs-linux-gpu.tar.gz.sig \
511506 -F file[]=@mmseqs-linux-gpu-cuda13.tar.gz -F signature[]=@mmseqs-linux-gpu-cuda13.tar.gz.sig \
512507 -F file[]=@mmseqs-linux-gpu-arm64.tar.gz -F signature[]=@mmseqs-linux-gpu-arm64.tar.gz.sig \
0 commit comments