Vsync for people who don't want to use C#
During 2014 we did a lot to help you use Vsync from other languages. One big category of options is to use any of the other non-C#
languages supported by .NET
. As you will see, not only does .NET itself support all sorts of languages (including C++ with some extensions, C, Python with some extensions, etc). Ken is currently
experimenting with a way to access Vaync from Java, using a helper library called IKVM.net, this should work soon, and would also support Scala.
People who have used Vsync from other languages sometimes send us a few hints to post. So far, we have one such contribution: On the downloads page is a link to some recommendations on using the system from IronRuby and F#, with clear instructions and small
demo programs for each. This was done by Keshav Varma, a Cornell student in our Cloud Computing class.
But we've also made a serious push to make Vsync more and more useful without ever programming against the Vsync API. You'll find that I recently posted
written by one of our students, Kaveri Chaudry, that offers a small server in which she runs Vsync (e.g. the server is a kind of stand-alone version of the library). You run one copy on each node in your cluster or HPC system. Then you can access
the Vsync OOB interface from programs on the same machines where you have copies of the server. Thus if you had 100 machines using Hadoop, you could put this server in the background and now it becomes possible to use the Isis2 in-memory replication API to
share mapped files between your applications. Weijia Song took this over late in 2014 and is now maintaining the solution. It is quite robust and surprisingly fast. The file locking API is also supported.
There are two ways to talk to Kaveri's server: via a command-line program she wrote, or from a very thin library for C++ or C users, who would work purely in native C++ or C, without the .NET CLI extensions.
Last, Ken's research group is doing a new pure C++ system called Derecho. It may not support the full Vsync API but should offer at least parts of it. We expect to be done in mid 2016.
Drop an email to Ken (firstname.lastname@example.org) if you have a good application for any of these features and would be willing to be a beta user.