Skip to content

HPI-Information-Systems/wf-optimization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63,725 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Window Function Optimization: Co-Evaluation and Other Techniques

This repository contains an adapted version of DuckDB with predicate Co-Evaluation for window functions. There are adaptations in multiple places:

Reproducibility

  • Build

    git submodule update --init --recursive
    COMMON_CMAKE_VARS="-DCMAKE_C_COMPILER=<your_c_compiler> -DCMAKE_CXX_COMPILER=<your_cxx_compiler>" \
        DISABLE_SANITIZER=1 DISABLE_VPTR_SANITIZER=1 GEN=ninja make release
    cd evaluation
    mkdir -p build
    cd build &&
    cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=<your_c_compiler> \
        -DCMAKE_CXX_COMPILER=<your_c_compiler> -GNinja
    cmake --build .
    cd ..
  • Data generation

    ./evaluation/scripts/generate_data.sh
  • Run the microbenchmarks

    ./evaluation/scripts/run_experiments.sh

    The result data is located in evaluation/experiments. If you run on a multi-socket machine, you need to execute within a Docker container to restrict to a NUMA region:

      docker --run -v "$(pwd)":"$(pwd)" --cpuset-cpus <region CPUs> --cpuset-mems <region ID> -it ubuntu:24.04
  • Plot

    ./evaluation/scripts/create_plots.sh

    The plots are located in evaluation/figures.

  • Dependencies

    ninja golang r-base

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published