Day 7

This post may be unfinished. My research has since ended and I decided that the benefits of this blog did not outweigh the time required to continue writing posts. I have decided to post the unfinished posts for continuity's sake.
Today I worked on building clones of virtual machines. The idea is to configure a single virtual machine the way we need to run these tests, and then distribute clones of this machine to many different computers in the lab. The virtual machine can just run in the background, requesting new test and running them in the virtual environment.

After figuring out the cloning process (not such a difficult process at all) I was working on configuring "teams" of virtual machines. Teams can be thought of as virtual labs, or banks of computers that you can interact with as a group. The goal of this was to have teams of computers running in the virtual environment rather than just a single computer and thus be able to run multiple instances of GraspIt in different virtual environments, getting a speed up on multi core systems by running it in parallel, without having to worry about multithreading the code, or worrying that GraspIt won't play nicely with other running instances. If anything should crash or not work as expected, it would happen in the virtual environment and not affect the the main environment of the computer.

I also worked on scripting the start-up and shutdown of the virtual teams, with the idea that a single command at the computer could start or stop the simulation and without dealing with any of the inner workings of the programs. That is, each individual virtual machine would always have a a bitten slave running, requesting tests, and from the main machine you could control if the "virtual lab" was on or off.

The number of things that can be scripted easily with the basic command line interface of VMware Workstation is somewhat limited however. I therefore looked into using VMware ESX and a more server dependent environment since it allowed for a wider range of scriptable functionality. Most likely though, this is overly complicated for this stage of the project.

0 comments:

Post a Comment