Giter Club home page Giter Club logo

tuk1_numa_a's Introduction

TuK NUMA Benchmarks

Setup

Requires libnuma, so it will only compile on Linux; for macOS you can use a Docker container (see below).

  1. Requirements: gcc, cmake, libnuma-dev
  2. Clone this repository and cd into it
  3. mkdir build && cd build
  4. cmake -G 'Unix Makefiles' -DCMAKE_BUILD_TYPE=Release .. (or set build type to Debug if needed)
  5. make -j8
  6. Run ./src/tuk_numa_benchmark

Develop with a Docker container (e.g. on macOS)

  1. Assuming docker is installed https://store.docker.com/editions/community/docker-ce-desktop-mac
  2. Build a docker image using the included Dockerfile: cd <repo> && docker build -t tuk-numa ./docker
  3. After creating the build directory, you can run CMake and make inside a container, e.g.:
docker run --rm \
    -v `pwd`:`pwd` \
    -w `pwd`/build \
    tuk-numa /bin/bash -c "cmake -G 'Unix Makefiles' -DCMAKE_BUILD_TYPE=Debug .."
  1. Because all this seems pretty tedious to type, I've set up a task and debug configuration for Visual Studio Code:
    1. Once you've opened the repo folder in VS Code
    2. Press Cmd-Shift-P and select "Tasks: Run Task" to build the docker image and initialize the CMake build directory
    3. Compile the project with Cmd-Shift-B
    4. Set a breakpoint and start debugging in VS Code, or select "Run Test Task" from the Cmd-Shift-P menu to run without a debugger

Results

Based on 7 computations (took 9 hours)

Task 1

columnscan_20m columnscan_100m rowscan_20m rowscan_100m

Task 2

join_20m_2000 join_20m_20000 join_20m_200000 join_20m_2000000 join_100m_2000 join_100m_20000 join_100m_200000 join_100m_2000000 join_local_20m join_local_100m join_local_remote_20m join_local_remote_100m join_same_remote_20m join_same_remote_100m join_different_remote_20m join_different_remote_100m

Task 3

query_plots

tuk1_numa_a's People

Contributors

lawben avatar nhoff95 avatar rs22 avatar starkrobert avatar wgierke avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

tuk1_numa_a's Issues

Does not build on Suse SLES 11

`Martin.Boissier@side:~/tuk1_2017/tuk1_numa_a/build> CXX=/usr/local/bin/c++ cmake -G 'Unix Makefiles' -DCMAKE_BUILD_TYPE=Release ..
-- The C compiler identification is GNU 7.1.0
-- The CXX compiler identification is GNU 7.1.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- broken
CMake Error at /usr/local/share/cmake-3.8/Modules/CMakeTestCCompiler.cmake:51 (message):
The C compiler "/usr/bin/cc" is not able to compile a simple test program.

It fails with the following output:

Change Dir: /home/Martin.Boissier/tuk1_2017/tuk1_numa_a/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/gmake" "cmTC_87333/fast"

/usr/bin/gmake -f CMakeFiles/cmTC_87333.dir/build.make
CMakeFiles/cmTC_87333.dir/build

gmake[1]: Entering directory
`/hana/shared/home/Martin.Boissier/tuk1_2017/tuk1_numa_a/build/CMakeFiles/CMakeTmp'

Building C object CMakeFiles/cmTC_87333.dir/testCCompiler.c.o

/usr/bin/cc -o CMakeFiles/cmTC_87333.dir/testCCompiler.c.o -c
/home/Martin.Boissier/tuk1_2017/tuk1_numa_a/build/CMakeFiles/CMakeTmp/testCCompiler.c

Linking C executable cmTC_87333

/usr/local/bin/cmake -E cmake_link_script
CMakeFiles/cmTC_87333.dir/link.txt --verbose=1

/usr/bin/cc -Wl,--print-map,-ltr,-lrt -rdynamic
CMakeFiles/cmTC_87333.dir/testCCompiler.c.o -o cmTC_87333

/usr/bin/ld: cannot find -ltr

collect2: error: ld returned 1 exit status

gmake[1]: *** [cmTC_87333] Error 1

gmake[1]: Leaving directory
`/hana/shared/home/Martin.Boissier/tuk1_2017/tuk1_numa_a/build/CMakeFiles/CMakeTmp'

gmake: *** [cmTC_87333/fast] Error 2

CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
CMakeLists.txt

-- Configuring incomplete, errors occurred!
See also "/home/Martin.Boissier/tuk1_2017/tuk1_numa_a/build/CMakeFiles/CMakeOutput.log".
See also "/home/Martin.Boissier/tuk1_2017/tuk1_numa_a/build/CMakeFiles/CMakeError.log".
Martin.Boissier@side:~/tuk1_2017/tuk1_numa_a/build>`

Any ideas?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.