fwiw I think it would reduce a lot of friction for the end user and probably increase utilization quite a bit. my new take on this problem is to arrange that shared resources are dynamically associated with your environment, rather than being assembled into one giant shared environment. so that if you run a program on your laptop that uses large scale compute resources, those remote threads see the same OS view that a local thread would. still not a business but I think potentially valuable. its strange how many solutions fall into that space.