A General-Purpose Virtualization Service for HPC on Cloud Computing: An Application to GPUs