summaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authorTimo Dritschler <timo.dritschler@kit.edu>2014-11-20 17:37:55 +0100
committerTimo Dritschler <timo.dritschler@kit.edu>2014-11-20 17:53:19 +0100
commit65c2326592b7b1496c468459689904843e443b26 (patch)
tree7dc907bc82227851bc8e13827ae25cbabcf9ba1f /README.md
parente71b75575658c435bc77c01ef098336c563af740 (diff)
downloadkiro-65c2326592b7b1496c468459689904843e443b26.tar.gz
kiro-65c2326592b7b1496c468459689904843e443b26.tar.bz2
kiro-65c2326592b7b1496c468459689904843e443b26.tar.xz
kiro-65c2326592b7b1496c468459689904843e443b26.zip
Release KIRO to GitHub under LGPL v2.1
Added kiro_*_free methods to all three units Added installation guide Added readme Added licence file
Diffstat (limited to 'README.md')
-rw-r--r--README.md74
1 files changed, 74 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..4cb06a9
--- /dev/null
+++ b/README.md
@@ -0,0 +1,74 @@
+General Information
+======================
+
+KIRO is the KITs InfiniBand remote communication library.
+It provides a simple server and client class that can be used to pass arbitrary
+information from the server to the client using _native_ InfiniBand
+communication.
+It also provides a network transmittable ring-buffer (TRB) which can be used as
+a transmission container for same-sized objects.
+
+The library is optimized for speed and ease of use.
+
+
+Installation
+=====================
+
+Please refer to the INSTALL file of this project.
+
+
+Usage
+====================
+
+Example KIRO server usage
+
+```
+#include <kiro-server.h>
+...
+
+int memSize = 42;
+void *mem = malloc(memSize); //This is the memory we want to provide
+
+KiroServer *server = kiro_server_new ();
+
+const char *address = "192.168.1.1";
+const char *port = "60010";
+kiro_server_start (server, address, port, mem, memSize);
+// The KIRO server is now running
+
+...
+
+kiro_server_stop (server);
+kiro_server_free (server);
+
+...
+```
+
+Example KIRO client usage
+```
+#include <kiro-client.h>
+...
+
+KiroClient *client = kiro_client_new ();
+
+const char *address = "192.168.1.1";
+const char *port = "60010";
+
+kiro_client_connect (client, address, port);
+//The client is now connected
+
+kiro_client_sync (client);
+
+void *mem = kiro_client_get_memory (client);
+
+kiro_client_free (client);
+```
+
+For TRB usage, check the examples in the _test_ directory
+
+
+Licensing
+=====================
+
+kiro is copyright to the Karlsruhe Institute of Technology and licensed under
+the LGPL 2.1.