Skip to content

Benchmarking RDMA based Arrow Data Transport against Arrow Flight

License

Notifications You must be signed in to change notification settings

JayjeetAtGithub/thallium-flight-benchmark

Repository files navigation

Thallium vs Arrow Flight Benchmark

Configuring CloudLab APT r320/c6220 Nodes

NOTE: All the steps need to be repeated on both the client and server nodes.

  1. Install dependencies.
# install ibverbs
apt update
apt install -y ibverbs-utils

# clone the repository
git clone https://github.com/JayjeetAtGithub/thallium-flight-benchmark ~/thallium-flight-benchmark

# install arrow
~/thallium-flight-benchmark/scripts/deploy_arrow.sh

# install spack
git clone -b releases/v0.18 -c feature.manyFiles=true https://github.com/spack/spack.git ~/spack
. ~/spack/share/spack/setup-env.sh

# setup mochi namespace
git clone https://github.com/mochi-hpc/mochi-spack-packages.git ~/mochi-spack-packages
spack repo add ~/mochi-spack-packages

# install mochi-thallium
spack install libfabric fabrics=tcp,udp,sockets,verbs,rxm
spack install --reuse mercury +ucx ^ucx+verbs
spack install --reuse mochi-margo@main
spack install --reuse mochi-thallium
spack install --reuse mochi-bake
spack install --reuse mochi-yokan ^rocksdb
spack load mochi-thallium
spack load mochi-bake
spack load mochi-yokan
  1. Load RDMA kernel modules.
modprobe ib_uverbs
modprobe ib_ipoib
  1. Check if the IB interface is available.
ifconfig -a

You should find a ib0/ibp8s0/ibp130s0 interface.

  1. Assign an IP address to the IB network interface.
# on client
ifconfig ibp8s0 10.0.1.50

# on server
ifconfig ibp8s0 10.0.2.50

Compiling

On both client and server nodes,

cmake .
make

The binaries will be generated in the bin directory.

Deploying dataset

On the server node,

./scripts/deploy_data.sh

References

About

Benchmarking RDMA based Arrow Data Transport against Arrow Flight

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published