Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Sample code and libraries built for ZeroVM
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Type||Name||Latest commit message||Commit time|
|Failed to load latest commit information.|
# ZeroVM Sample A set of samples demonstrating usage and building of the ZeroVM runtime. ## Instructions Set `ZVM_PREFIX` to wherever ZeroVM was installed. For example, if ZeroVM was installed to `/usr/bin/zerovm` run the following: `ZVM_PREFIX=/usr make`. ## Samples * `disort` - An example of distributed sort using 3 kind of application sources, destination, manager that interacts as nodes, and implements networking communication. Local sort uses high performance bitonic sort for sse41 instructions set, or qsort from c std library for another cpu instructions set. Currently network organized by 10 source, 10 destination and one manager nodes. Count of nodes and amount of sorting data are possible to config. Source data generates by generator application, and should be run separately from sorting job. * `hello` - A simple example demonstrating how to write a program for ZeroVM. * `reqrep` - This example uses a network facility. It emulates a simple network, where two nodes are communicating one to one. It can work in two modes: Mode 1 - Single node sending N MB and receives the same from another node. Mode 2 - one node sends and another node receives data in cycle. * `sort_paging` - High performance sort contains 3 programs which create random data, sort it and test sort order. From this example you can see how to use intrinsics under ZeroVM. Also this is another example of pagination mechanism. Does check for sse41. * `tarimage` - Nvram usage demo. User specified tarball archive and using nvram mechanism image contents are injected into user file system and listing it by `readdir`. * `time` - Via the ZeroVM API user program can get date/time specified in environment variable `TmeStamp`. If there is no such env var then user program will get `-1 (1969-12-31 time = 23:59:59 UTC)`. * `wordcount` - Distributed application that uses map/reduce and networking libraries. It calculates count of words in provided input files; One file per one map node is setup by design. * `zshell` - Run lua scripts and sql queries via single ZeroVM executable and various manifest files. Python scripting is also available.