Question

I have set up cloud for my project. This project requires task migration (A process running on one computer will be stopped and transferred to another computer where it will start at the same point).

Currently i am using Xen as hyper-visor and have created 4 virtual machines on it... Now i want to transfer process from one virtual machine to another without restarting the task...

I tried using open-mpi but they are currently not supporting task migration.

Os: Ubunutu 12

Was it helpful?

Solution

Open-MPI is not made for task migration but rather for communication between processes by message-passing. But this could be a tool for the communication/synchronization between the two machines used for the process migration.

Pure task/process migration is hard to implement, because you will need to restore the context of the program as it was on the first machine (or a Virtual machine deployed on the Cloud in your case). It means dumping all the informations about the address space (heap, stack and registers), open file descriptors, pending Signals, inter-process communication channels, repair sockets/TCP connexions if any, and restoring it on the targeted machine.

This document explains the challenges of preemptive process migration. This paper could be a good resource also. This is an extensive topic but some implementations exists such as Linux PMI or more lately CRIU.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top