A system, method and computer program for transferring a running virtual machine from a first to a second physical machine, where each of the physical machines has a different instruction set architecture. The system may comprise a receiver for receiving a transfer request; responsive to receiving the transfer request, pausing the virtual machine and collecting a state of the virtual machine. A first interface component operable on the first physical machine is stopped and a second interface component operable on the second physical machine is started. The state is transferred to the second interface component. The the virtual machine on the second physical machine is started in response to the state transfer.