Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion .build-tools/containers/buildenv/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,10 @@ RUN git clone -b v0.3.28 --single-branch --depth 1 https://github.com/OpenMathLi
sudo make PREFIX=/usr/local install && \
sudo rm -rf ${HOME}/OpenBLAS


RUN sudo apt-get install -y python3.10-dev
COPY requirements.txt $HOME
RUN source $HOME/.venv/bin/activate && pip install --upgrade pip && pip install -r $HOME/requirements.txt && rm $HOME/requirements.txt

RUN sudo sed -i '/^\[instrumentation\]/,/^\[/{s/version *= *"ovni"/version = "none"/}' /usr/local/share/nosv.toml

WORKDIR $HOME
1 change: 1 addition & 0 deletions .build-tools/containers/buildenv/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
pybind11==3.0.1
37 changes: 7 additions & 30 deletions .github/workflows/master-test-workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,43 +40,19 @@ jobs:
with:
submodules: 'true'

- name: Build Pybind11
run: |
sudo apt-get update
sudo apt-get install -y python3-pytest

cd extern/pybind11
mkdir -p build
cd build
cmake .. -DPython_EXECUTABLE=/usr/bin/python3
make check -j"$(nproc)"

mkdir -p mock_install/share/pkgconfig
cat <<EOF > mock_install/share/pkgconfig/pybind11.pc
prefix=$(pwd)/..
includedir=\${prefix}/include

Name: pybind11
Description: Seamless operability between C++11 and Python
Version: 2.13.6
Cflags: -I\${includedir}
EOF

echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$(pwd)/mock_install/share/pkgconfig" >> $GITHUB_ENV

- name: Setup
run: source /home/hicr/.bashrc && meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngine=mpi -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true

- name: Compile
run: source /home/hicr/.bashrc && meson compile -C build

- name: Dry-run compilation
shell: bash
run: source /home/hicr/.bashrc && meson setup --wipe build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,lpf,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false && meson compile -C build

- name: Running tests and creating coverage report
shell: bash
env:
LD_PRELOAD: /usr/local/lib/libnosv.so
run: |
echo "Running Tests..."
source /home/hicr/.bashrc
meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false
meson compile -C build
meson test -C build
echo "Creating coverage report..."
ninja -C build coverage
Expand All @@ -85,3 +61,4 @@ jobs:
with:
name: meson-logs-${{ inputs.arch }}
path: build/meson-logs/

67 changes: 0 additions & 67 deletions .github/workflows/pr-development-coverage.yml

This file was deleted.

42 changes: 8 additions & 34 deletions .github/workflows/pr-development-workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -230,16 +230,16 @@ jobs:
run: |
docker run --name taskr --shm-size=1024M --privileged -v $PWD:/home/hicr/taskr -w /home/hicr/taskr -td ${{ env.DOCKERIMAGE }}:${{ inputs.arch }}-latest bash

- name: Setup
run: docker exec -u hicr taskr bash -c "meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngine=mpi -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true"
- name: Dry-run compilation
run: docker exec -u hicr taskr bash -c "meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,lpf,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false && meson compile -C build"

- name: Compile
run: docker exec -u hicr taskr bash -c "meson compile -C build"

- name: Running tests and creating coverage report
run: |
echo "Running Tests..."
docker exec -u hicr taskr bash -c "source /home/hicr/.bashrc && meson test -C build"
docker exec -u hicr taskr bash -c "meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false && meson compile -C build && meson test -C build"
echo "Creating coverage report..."
docker exec -u hicr taskr bash -c "ninja -C build coverage"
docker stop taskr
Expand Down Expand Up @@ -270,43 +270,17 @@ jobs:
with:
submodules: 'true'

- name: Build Pybind11
run: |
sudo apt-get update
sudo apt-get install -y python3-pytest

cd extern/pybind11
mkdir -p build
cd build
cmake .. -DPython_EXECUTABLE=/usr/bin/python3
make check -j"$(nproc)"

mkdir -p mock_install/share/pkgconfig
cat <<EOF > mock_install/share/pkgconfig/pybind11.pc
prefix=$(pwd)/..
includedir=\${prefix}/include

Name: pybind11
Description: Seamless operability between C++11 and Python
Version: 2.13.6
Cflags: -I\${includedir}
EOF

echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$(pwd)/mock_install/share/pkgconfig" >> $GITHUB_ENV

- name: Setup
run: source /home/hicr/.bashrc && meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngine=mpi -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true

- name: Compile
run: source /home/hicr/.bashrc && meson compile -C build

- name: Dry-run compilation
run: source /home/hicr/.bashrc && meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,lpf,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false && meson compile -C build

- name: Running tests and creating coverage report
shell: bash
env:
LD_PRELOAD: /usr/local/lib/libnosv.so
run: |
echo "Running Tests..."
source /home/hicr/.bashrc
meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false
meson compile -C build
meson test -C build
echo "Creating coverage report..."
ninja -C build coverage
Expand Down
2 changes: 1 addition & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ build:
- source /home/hicr/.hicr-env.sh
- echo "Building TaskR..."
- mkdir build
- meson setup build -Dbuildtype=debug -Db_coverage=true -DbuildTests=true -DbuildExamples=true -DdistributedEngine=mpi -DexecutionStateType=boost,nosv -DprocessingUnitType=pthreads,nosv -DbuildInstrumentation=true -DbuildPyTaskR=true -DcompileWarningsAsErrors=true
- meson setup build -Dbuildtype=debug -Db_coverage=true -DbuildTests=true -DbuildExamples=true -DdistributedEngines=mpi -DexecutionStateType=boost,nosv -DprocessingUnitType=pthreads,nosv -DbuildInstrumentation=true -DbuildPyTaskR=true -DcompileWarningsAsErrors=true
- meson compile -C build
- echo "Running tests..."
- meson test -C build
Expand Down
8 changes: 2 additions & 6 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,7 @@
path = extern/tracr
url = https://github.com/Algebraic-Programming/TraCR.git
branch = main
[submodule "extern/hicr"]
path = extern/hicr
[submodule "extern/HiCR"]
path = extern/HiCR
url = https://github.com/Algebraic-Programming/HiCR.git
branch = master
[submodule "extern/pybind11"]
path = extern/pybind11
url = https://github.com/pybind/pybind11.git
branch = stable
4 changes: 2 additions & 2 deletions examples/abcTasks/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@ if 'boost' in get_option('executionStateType') and 'pthreads' in get_option('pro
threading = executable('threading', [ 'cpp/pthreads.cpp'], dependencies: [ TaskRBuildDep ])

if get_option('buildTests')
test('threading', threading, args : [ ], suite: testSuite, workdir: threading.path() + '.p' )
test('threading', threading, args : [ ], suite: testSuite, workdir: threading.full_path() + '.p' )
endif
endif

if 'nosv' in get_option('executionStateType') and 'nosv' in get_option('processingUnitType')
nosv = executable('nosv', [ 'cpp/nosv.cpp'], dependencies: [ TaskRBuildDep ])

if get_option('buildTests')
test('nosv', nosv, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv.path() + '.p')
test('nosv', nosv, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv.full_path() + '.p')
endif
endif

Expand Down
4 changes: 2 additions & 2 deletions examples/cholesky/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ if 'boost' in get_option('executionStateType') and 'pthreads' in get_option('pro
threading = executable('threading', [ 'source/pthreads.cpp'], include_directories: include_directories(['source']), dependencies: [ choleskyDep] )

if get_option('buildTests')
test('threading', threading, args: [ '384', '24', '0', '0' ], suite: testSuite, workdir: threading.path() + '.p' )
test('threading', threading, args: [ '384', '24', '0', '0' ], suite: testSuite, workdir: threading.full_path() + '.p' )
endif
endif

if 'nosv' in get_option('executionStateType') and 'nosv' in get_option('processingUnitType')
nosv = executable('nosv', [ 'source/nosv.cpp'], include_directories: include_directories(['source']), dependencies: [ choleskyDep] )

if get_option('buildTests')
test('nosv', nosv, args: [ '384', '24', '0', '0' ], is_parallel : false, suite: testSuite, workdir: nosv.path() + '.p' )
test('nosv', nosv, args: [ '384', '24', '0', '0' ], is_parallel : false, suite: testSuite, workdir: nosv.full_path() + '.p' )
endif
endif
16 changes: 8 additions & 8 deletions examples/conditionVariable/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ if 'boost' in get_option('executionStateType') and 'pthreads' in get_option('pro
threading_conditionVariableWaitForCondition = executable('threading_conditionVariableWaitForCondition', [ 'cpp/pthreads.cpp'], dependencies: [ TaskRBuildDep ], cpp_args: [ '-D__TEST_FUNCTION_=conditionVariableWaitForCondition'] )

if get_option('buildTests')
test('threading_conditionVariableWait', threading_conditionVariableWait, args : [ ], suite: testSuite, workdir: threading_conditionVariableWait.path() + '.p' )
test('threading_conditionVariableWaitFor', threading_conditionVariableWaitFor, args : [ ], suite: testSuite, workdir: threading_conditionVariableWaitFor.path() + '.p' )
test('threading_conditionVariableWaitCondition', threading_conditionVariableWaitCondition, args : [ ], suite: testSuite, workdir: threading_conditionVariableWaitCondition.path() + '.p' )
test('threading_conditionVariableWaitForCondition', threading_conditionVariableWaitForCondition, args : [ ], suite: testSuite, workdir: threading_conditionVariableWaitForCondition.path() + '.p' )
test('threading_conditionVariableWait', threading_conditionVariableWait, args : [ ], suite: testSuite, workdir: threading_conditionVariableWait.full_path() + '.p' )
test('threading_conditionVariableWaitFor', threading_conditionVariableWaitFor, args : [ ], suite: testSuite, workdir: threading_conditionVariableWaitFor.full_path() + '.p' )
test('threading_conditionVariableWaitCondition', threading_conditionVariableWaitCondition, args : [ ], suite: testSuite, workdir: threading_conditionVariableWaitCondition.full_path() + '.p' )
test('threading_conditionVariableWaitForCondition', threading_conditionVariableWaitForCondition, args : [ ], suite: testSuite, workdir: threading_conditionVariableWaitForCondition.full_path() + '.p' )
endif
endif

Expand All @@ -21,10 +21,10 @@ if 'nosv' in get_option('executionStateType') and 'nosv' in get_option('processi
nosv_conditionVariableWaitForCondition = executable('nosv_conditionVariableWaitForCondition', [ 'cpp/nosv.cpp'], dependencies: [ TaskRBuildDep ], cpp_args: [ '-D__TEST_FUNCTION_=conditionVariableWaitForCondition'] )

if get_option('buildTests')
test('nosv_conditionVariableWait', nosv_conditionVariableWait, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv_conditionVariableWait.path() + '.p' )
test('nosv_conditionVariableWaitFor', nosv_conditionVariableWaitFor, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv_conditionVariableWaitFor.path() + '.p' )
test('nosv_conditionVariableWaitCondition', nosv_conditionVariableWaitCondition, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv_conditionVariableWaitCondition.path() + '.p' )
test('nosv_conditionVariableWaitForCondition', nosv_conditionVariableWaitForCondition, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv_conditionVariableWaitForCondition.path() + '.p' )
test('nosv_conditionVariableWait', nosv_conditionVariableWait, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv_conditionVariableWait.full_path() + '.p' )
test('nosv_conditionVariableWaitFor', nosv_conditionVariableWaitFor, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv_conditionVariableWaitFor.full_path() + '.p' )
test('nosv_conditionVariableWaitCondition', nosv_conditionVariableWaitCondition, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv_conditionVariableWaitCondition.full_path() + '.p' )
test('nosv_conditionVariableWaitForCondition', nosv_conditionVariableWaitForCondition, args : [ ], is_parallel : false, suite: testSuite, workdir: nosv_conditionVariableWaitForCondition.full_path() + '.p' )
endif
endif

Expand Down
4 changes: 2 additions & 2 deletions examples/energySaver/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@ if 'boost' in get_option('executionStateType') and 'pthreads' in get_option('pro
threading = executable('threading', [ 'cpp/pthreads.cpp'], dependencies: [ TaskRBuildDep ])

if get_option('buildTests')
test('threading', threading, args : [ '3', '1', '100' ], suite: testSuite, workdir: threading.path() + '.p' )
test('threading', threading, args : [ '3', '1', '100' ], suite: testSuite, workdir: threading.full_path() + '.p' )
endif
endif

if 'nosv' in get_option('executionStateType') and 'nosv' in get_option('processingUnitType')
nosv = executable('nosv', [ 'cpp/nosv.cpp'], dependencies: [ TaskRBuildDep ])

if get_option('buildTests')
test('nosv', nosv, args : [ '3', '1', '100' ], is_parallel : false, suite: testSuite, workdir: nosv.path() + '.p' )
test('nosv', nosv, args : [ '3', '1', '100' ], is_parallel : false, suite: testSuite, workdir: nosv.full_path() + '.p' )
endif
endif

Expand Down
4 changes: 2 additions & 2 deletions examples/fibonacci/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@ if 'boost' in get_option('executionStateType') and 'pthreads' in get_option('pro
threading = executable('threading', [ 'cpp/pthreads.cpp'], dependencies: [ TaskRBuildDep ])

if get_option('buildTests')
test('threading', threading, args : [ '15' ], suite: testSuite, workdir: threading.path() + '.p' )
test('threading', threading, args : [ '15' ], suite: testSuite, workdir: threading.full_path() + '.p' )
endif
endif

if 'nosv' in get_option('executionStateType') and 'nosv' in get_option('processingUnitType')
nosv = executable('nosv', [ 'cpp/nosv.cpp'], dependencies: [ TaskRBuildDep ])

if get_option('buildTests')
test('nosv', nosv, args : [ '15' ], is_parallel : false, suite: testSuite, workdir: nosv.path() + '.p' )
test('nosv', nosv, args : [ '15' ], is_parallel : false, suite: testSuite, workdir: nosv.full_path() + '.p' )
endif
endif

Expand Down
Loading
Loading