Skip to content

Commit

Permalink
Merge branch 'master' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
michabirklbauer committed Apr 15, 2024
2 parents 7460db8 + 0323ef8 commit cd1ce4a
Show file tree
Hide file tree
Showing 33 changed files with 2,310 additions and 0 deletions.
64 changes: 64 additions & 0 deletions .github/workflows/build-linux.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Build .NET for generic Linux

on:
workflow_dispatch:

jobs:
Build-for-Linux:
runs-on: ubuntu-22.04
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt-get update && sudo apt-get install -y gnupg \
gnupg1 \
gnupg2 \
software-properties-common \
curl \
git \
libglib2.0-0 \
libsm6 \
libxrender1 \
libxext6 \
libc6 \
libgcc-s1 \
libgssapi-krb5-2 \
libicu70 \
liblttng-ust1 \
libssl3 \
libstdc++6 \
libunwind8 \
zlib1g \
dotnet-sdk-6.0 \
dotnet-runtime-6.0 \
unzip \
zip \
gcc \
g++
- name: Copy and unzip eigen
run: |
cp eigen-3.4.0.zip VectorSearch
cd VectorSearch
unzip eigen-3.4.0.zip
- name: Build VectorSearch.dll dynamic library
run: |
cd VectorSearch
g++ -shared -I eigen-3.4.0 -fPIC -fopenmp -O3 -o VectorSearch.dll dllmainUnix.cpp
cp VectorSearch.dll ..
- name: Build DataLoader
run: |
cd DataLoader
dotnet publish DataLoader.csproj --runtime linux-x64 --self-contained --configuration Release
- name: Copy VectorSearch.dll to Release
run: |
cp VectorSearch.dll DataLoader/bin/Release/net6.0/linux-x64
- name: Zip Release
run: |
cd DataLoader/bin/
zip -r Release.zip Release
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: release-linux-x64-cpu-only
path: DataLoader/bin/Release.zip
41 changes: 41 additions & 0 deletions .github/workflows/build-macos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Build for macOS

on:
workflow_dispatch:

jobs:
Build-for-macOS:
runs-on: macos-14
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Copy and unzip eigen
run: |
cp eigen-3.4.0.zip VectorSearch
cd VectorSearch
unzip eigen-3.4.0.zip
- name: Build VectorSearch.dll dynamic library
run: |
cd VectorSearch
g++-13 -Wl,-ld_classic -shared -I eigen-3.4.0 -fPIC -fopenmp -O3 -o VectorSearch.dll dllmainUnix.cpp
cp VectorSearch.dll ..
- name: Install NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: '6'
- name: Build DataLoader
run: |
cd DataLoader
dotnet publish DataLoader.csproj --runtime osx-arm64 --self-contained --configuration Release
- name: Copy VectorSearch.dll to Release
run: |
cp VectorSearch.dll DataLoader/bin/Release/net6.0/osx-arm64
- name: Zip Release
run: |
cd DataLoader/bin/
zip -r Release.zip Release
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: release-macos-arm64-cpu-only
path: DataLoader/bin/Release.zip
64 changes: 64 additions & 0 deletions .github/workflows/build-ubuntu.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Build for Ubuntu 22.04

on:
workflow_dispatch:

jobs:
Build-for-Ubuntu:
runs-on: ubuntu-22.04
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt-get update && sudo apt-get install -y gnupg \
gnupg1 \
gnupg2 \
software-properties-common \
curl \
git \
libglib2.0-0 \
libsm6 \
libxrender1 \
libxext6 \
libc6 \
libgcc-s1 \
libgssapi-krb5-2 \
libicu70 \
liblttng-ust1 \
libssl3 \
libstdc++6 \
libunwind8 \
zlib1g \
dotnet-sdk-6.0 \
dotnet-runtime-6.0 \
unzip \
zip \
gcc \
g++
- name: Copy and unzip eigen
run: |
cp eigen-3.4.0.zip VectorSearch
cd VectorSearch
unzip eigen-3.4.0.zip
- name: Build VectorSearch.dll dynamic library
run: |
cd VectorSearch
g++ -shared -I eigen-3.4.0 -fPIC -fopenmp -O3 -o VectorSearch.dll dllmainUnix.cpp
cp VectorSearch.dll ..
- name: Build DataLoader
run: |
cd DataLoader
dotnet publish DataLoader.csproj --runtime ubuntu.22.04-x64 --self-contained --configuration Release
- name: Copy VectorSearch.dll to Release
run: |
cp VectorSearch.dll DataLoader/bin/Release/net6.0/ubuntu.22.04-x64
- name: Zip Release
run: |
cd DataLoader/bin/
zip -r Release.zip Release
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: release-ubuntu-22.04-x64-cpu-only
path: DataLoader/bin/Release.zip
35 changes: 35 additions & 0 deletions .github/workflows/test-linux.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Test for generic Linux

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
Test-for-Linux:
runs-on: ubuntu-22.04
container: debian:bookworm
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Install dependencies
run: |
apt-get update && apt-get install -y curl \
g++ \
libc6 \
libgcc-s1 \
libgssapi-krb5-2 \
libicu72 \
libssl3 \
libstdc++6 \
zlib1g
- name: Install NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: '6'
- name: Test
run: |
cd DataLoaderExecutable/linux_x64/uncompressed
chmod +x DataLoader
./DataLoader EigenSIntB 10000
23 changes: 23 additions & 0 deletions .github/workflows/test-macos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Test for macOS

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
Test-for-macOS:
runs-on: macos-14
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Install NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: '6'
- name: Test
run: |
cd DataLoaderExecutable/macos_arm/uncompressed
chmod +x DataLoader
./DataLoader EigenSIntB 10000
Loading

0 comments on commit cd1ce4a

Please sign in to comment.