I work as a scientist in infectious diseases and with my work I do a lot of data science, genomics (the study of 'BIG' digital genetic datasets) and countless other analyses and techniques in silico. I consider myself a power user, I use Linux systems primarily and have a keen understanding of Bash shell, scripting in various languages etc - however my primary expertise is not in the creation of informatic tools, but using them to complement my work in the lab. I often use janky programs written by people with varying skill levels, to get jobs done during my analyses. So I find myself compiling stuff, delving in to deep dependency holes in attempts to get stuff to work. The problem with this is that my machine (i7-7700, 64GB, 256 NVMe, 1TB HDD) running Ubuntu has started to get bogged down over the years - entirely by my own fault, I'm sure. But I've seen this as an opportunity now, to go full virtual on my next overhaul/cleanboot.
I'd like to basically have my host workstation running Linux VM(s) with the highest performance possible, with a virtual image that I can offload at the end of the day, on to removable storage so I can work on it at home or on my laptop. We have HPC facilities, so I'm not worried about losing raw compute performance on the wrokstation VMs, I just want the cleanest/quickest VM user experience possible - with the 'portable aspect' incorporated. That way, when. a machine gets slow, I can burn it. Or if I know I'm going on a program installing rampage, I can do so on a burner VM until I find the right recipe. I use the 1TB HDD as a shared drive for the VMs to store all large datasets on, so I don't duplicate - and when I need to take data away, I can pick and choose the files I need to offload at the end of the day. I store the VMs on the host NVMe drive.
So....I've noticed moving VHDs around is super slow for some reason, definitely not USB 3 speeds. Am I doing something wrong? Secondly, what can I do in terms of removable storage? A caddy for an M.2 drive to decant the VM on to when I want to go mobile, or will there be bottlenecks? And I think finally, are there any better solutions to what I'm trying to achieve? I use SSH a lot, but sometimes you just want your desktop environment, and all your toys, so I'd like a GUI, and TeamViewer is okay, but inherently slow, so I'm over that.
I think I've effectively described my situation here, as well as providing my life story, so I welcome any help anybody has to offer. I'm really in to my hardware and going the extra mile to get added/cool functionality so hit me with your best!