• Stars
    star
    126
  • Rank 284,543 (Top 6 %)
  • Language
    C
  • Created over 8 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

SoftiWARP: Software iWARP kernel driver and user library for Linux

#SoftiWARP

SoftiWARP (siw) is a software iWARP kernel driver and user library for Linux. It implements the iWARP protocol suite (MPA/DDP/RDMAP, IETF-RFC 5044/5041/5040) completely in software, without requiring any dedicated RDMA hardware. It comprises a loadable Linux kernel module siw located in kernel/ and a user level library libsiw located in userlib/.

SoftiWarp targets for integration with the OpenFabrics (OFA) ecosystem. For OFA integration, it is written against its kernel and user level interfaces.

SoftiWARP supports both user level and kernel level applications. It makes use of the OFA connection manager to set up connections. The kernel component runs on top of TCP kernel sockets.

Code structure

kernel/:	kernel module
userlib/:	user library
common/:	common include file(s)

Build and install

Linux kernel versions

SoftiWARP code tries to stay up to date with recent Linux kernels. Git master is supposed to run on the newest stable kernel. To ease code maintenance and to allow for back porting of any new features, old versions of SoftiWARP will be branched off with discriptive names. master is always tagged with the kernel version it matches.

Re-installing a newer SoftiWARP version after a kernel upgrade shall include making and re-installing both user library and kernel module (see below).

User-space library

 cd /path/to/your/clone/userlib
 ./autogen.sh
 ./configure
 make install

Kernel module

To build:

cd /path/to/your/clone/kernel
make

To load:

settings 1: for starting TX threads on available CPUs (check dmesg which CPUs runs TX thread)

sudo insmod ./siw.ko

setting 2: for starting TX thread on all CPUs given in comma separated list, if CPU available

sudo insmod ./siw.ko tx_cpu_list=[n,m,...]

Contributions

PRs are always welcome. Please fork, and make necessary modifications you propose, and let us know.

Contact

If you have questions or suggestions, feel free to post at:

https://groups.google.com/forum/#!forum/zrlio-users

or email: [email protected]

More Repositories

1

disni

DiSNI: Direct Storage and Networking Interface
Java
180
star
2

urdma

Verbs on DPDK
C
100
star
3

crail

[Archived] A Fast Multi-tiered Distributed Storage System based on User-Level I/O
Java
71
star
4

darpc

DaRPC: Data Center Remote Procedure Call
Java
50
star
5

crail-spark-io

Fast I/O plugins for Spark
Scala
41
star
6

hyv

A hybrid I/O virtualization framework for RDMA-capable network interfaces
C
32
star
7

jNVMf

A NVMf library for Java
Java
27
star
8

parquet-generator

Parquet file generator
Scala
22
star
9

albis

Albis: High-Performance File Format for Big Data Systems
21
star
10

jaio

Java API for libaio
Java
14
star
11

Python-c-benchmark

Python -> C/C++ function call overhead benchmark
Python
8
star
12

crail-blkdev

Crail storage on shared volume block devices
Java
6
star
13

softiwarp-user-for-linux-rdma

RFC: adds most recent version of softiwarp user library to rdma-core, aiming at linux-rdma acceptance
C
6
star
14

narpc

RPC library based on Java NIO
Java
4
star
15

crail-spark-terasort

An example TeraSort program on spark-io and crail
Scala
4
star
16

sql-benchmarks

A set of Spark SQL benchmarks
Scala
4
star
17

crail-s3

Crail storage tier for S3-compatible object stores
Java
3
star
18

spark-hcs

Apache Spark with HCS integration
3
star
19

hcs

Source code for the Heterogeneous Cluster Scheduler (HCS)
2
star
20

softiwarp-for-linux-rdma

SoftiWarp driver integration with rdma/for-next branch of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git
C
1
star
21

crail-dispatcher

Accept put/get requests through loopback RPC and dispatches the operation on Crail
Python
1
star
22

spark-nullio-fileformat

Spark Null I/O file format
Scala
1
star
23

crail-project

[Archived] High-Performance Data Processing using Fast Storage and Networking Hardware
HTML
1
star