diff --git a/.github/workflows/generate_jsonl.yml.disabled b/.github/workflows/generate_jsonl.yml.disabled new file mode 100644 index 00000000..3a5b866a --- /dev/null +++ b/.github/workflows/generate_jsonl.yml.disabled @@ -0,0 +1,100 @@ +name: Generate JSONL + +on: + push: + branches: ['*'] + pull_request: + branches: ['*'] + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + generate-jsonl: + strategy: + matrix: + os: [macos-13, windows-latest] + python-version: ['3.10'] + fail-fast: false + + runs-on: ${{ matrix.os }} + + steps: + - uses: actions/checkout@v4 + with: + submodules: 'recursive' + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + architecture: x64 + + - name: Preinstall (Windows) + shell: bash + if: startsWith(matrix.os, 'windows') + run: | + choco install llvm + - name: Install dependencies (macOS) + if: runner.os == 'macOS' + run: | + brew install gettext + brew link gettext --force + brew install llvm + + - name: Install dependencies + run: | + python -m pip install --upgrade pip wheel setuptools + pip install -r requirements.txt + - name: Generate JSONL (Windows) + if: startsWith(matrix.os, 'windows') + run: | + set "PATH=C:\Program Files\LLVM\bin;%PATH%" + set "AR=llvm-ar" + set "AS=llvm-as" + set "CC=clang" + set RANLIB=echo + clang --version + rm "blis/_src/make/windows-generic.jsonl" + rm "blis/_src/make/windows-x86_64.jsonl" + cd flame-blis + bash -lc "./configure --disable-blas --disable-cblas --disable-shared --disable-threading --int-size=64 --enable-verbose-make --enable-arg-max-hack generic" + echo "Compiling" + mingw32-make + - name: Generate JSONL (macOS) + if: runner.os == 'macOS' + run: | + export PATH="/usr/local/opt/llvm/bin:$PATH" + export PATH="/usr/local/opt/gettext/bin:$PATH" + clang --version + chmod +x bin/generate-make-jsonl + bin/generate-make-jsonl darwin generic --export + bin/generate-make-jsonl darwin x86_64 --export + bin/generate-make-jsonl darwin x86_64_no_zen3 --export + bin/generate-make-jsonl darwin x86_64_no_zen2 --export + bin/generate-make-jsonl darwin x86_64_no_skx --export + + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: jsonl-${{ runner.os }} + path: artifacts/ + retention-days: 5 + + # Optional: Automatically commit artifacts + # - name: Download all artifacts + # if: github.ref == 'refs/heads/main' && github.event_name == 'push' + # uses: actions/download-artifact@v4 + # with: + # path: downloaded-artifacts + # + # - name: Commit artifacts + # if: github.ref == 'refs/heads/main' && github.event_name == 'push' + # run: | + # git config --local user.email "github-actions[bot]@users.noreply.github.com" + # git config --local user.name "github-actions[bot]" + # cp -r downloaded-artifacts/* artifacts/ + # git add artifacts/ + # git commit -m "Update JSONL artifacts [skip ci]" || echo "No changes to commit" + # git push diff --git a/azure-pipelines.yml b/azure-pipelines.yml index c8a7e9ca..fbce90a1 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -10,12 +10,12 @@ jobs: condition: false strategy: matrix: - Python38Mac: + Python310Mac: imageName: 'macos-latest' - python.version: '3.8' - Python38Windows: + python.version: '3.10' + Python310Windows: imageName: 'windows-latest' - python.version: '3.8' + python.version: '3.10' maxParallel: 4 pool: vmImage: $(imageName) diff --git a/bin/generate-make-jsonl b/bin/generate-make-jsonl index 3260369f..451379dd 100755 --- a/bin/generate-make-jsonl +++ b/bin/generate-make-jsonl @@ -7,17 +7,23 @@ ARCH="$2" EXPORT="$3" JSONL="blis/_src/make/$OS-$ARCH.jsonl" +mkdir -p include + cd flame-blis if [ ! -f $JSONL ]; then echo "Compile" if [[ "$OS" == "windows" ]]; then + echo "Build with mingw32-make" mingw32-make clean ./configure --disable-blas --disable-cblas --disable-shared --disable-threading --int-size=64 --enable-verbose-make --enable-arg-max-hack $ARCH - mingw32-make -j 4 > make.log + echo "Compiling" + mingw32-make | tee make.log else + echo "Build with make" make clean ./configure --disable-blas --disable-cblas --disable-shared --disable-threading --int-size=64 --enable-verbose-make --export-shared=all $ARCH - make > make.log + echo "Compiling" + make | tee make.log fi echo "Preprocess make log" cat make.log | python ../bin/munge_make_log.py $OS $ARCH > ../$JSONL diff --git a/blis/about.py b/blis/about.py index e874efd4..15510bc8 100644 --- a/blis/about.py +++ b/blis/about.py @@ -5,7 +5,7 @@ # https://github.com/pypa/warehouse/blob/master/warehouse/__about__.py __name__ = "blis" -__version__ = "1.0.2" +__version__ = "1.1.0" __summary__ = ( "The Blis BLAS-like linear algebra library, as a self-contained C-extension." ) diff --git a/flame-blis b/flame-blis index 8137f660..1bdac24e 160000 --- a/flame-blis +++ b/flame-blis @@ -1 +1 @@ -Subproject commit 8137f660d8351c3a3c3b38f4606121578e128b70 +Subproject commit 1bdac24e09f49a287294a4873c264a812d7df94b