Setting up Google Cloud to play Windows based game
Setting up Google Cloud to play Windows based game
04 December 2020
Why should you choose it?
- You know, a lot of free credit.
- Excellent bandwidth and low latency.
- World’s most powerful GPUs (Nvidia V100 and P100).
- Sometimes the connection from the client-side with parsec fails with an error code -6023.
- The maximum resolution is 1366 x 768, would be awesome if someone finds out how to get higher resolutions. UPDATE: the solution is in the first comment.
- Getting permanent GPUs can be troublesome (you`ll understand this later)
Till today it has been impossible to get a gaming VM in google cloud, azure works but the wide adoption of the NV6 instances has taken the GPUs with them, and is hard to get one of those VM. Today you will learn how to do exactly the same thing in google cloud.
The further the data center is from you the longer it takes the data to arrive at you, this is latency and for cloud gaming the latency is decisive. You have to focus on a specific zone to create your instance and that zone has to be the closest possible to your physical location.
You can check that at this link: https://cloud.google.com/about/locations
Also, you have to check out the GPU availability in the zone that is the closest to you, you can do that at this link: https://cloud.google.com/compute/docs/gpus/
Preemptive VS. Normal
Preemptive GPUs and machines are 30 – 60% cheaper than the reserved normal ones but after 24 hours of summary use, they are deleted.
The advantage is that the GPU quota that is easier to get is the preemptive one, but preemptive GPUs can only be putten in a preemptive instance.
Reserving your GPU
In order to get a GPU available to your instance, you have to reserve a quota of GPU. You can do this by going to IAM and management and then select the GPU quota that corresponds to your zone. Remember that the preemptive GPU quota is easier to get approved than the non-preemptive one.
You have to select the P100 or the V100, DO NOT select the K80, the driver that you´ll install later doesn’t support that card, only supports the P100 and the V100.
Click to edit quota and ask for an ampliation, be creative when asking and in 2 – 3 business days it will get approved.
Creating the instance
Create your instance, create it in the same region and zone where you have your GPU quota approved. Select the Windows Server 2016 image and select the SSD disk type. You know that today’s games are too big, so, select a big disk size but take in mind that each 100 GB SSD is 17.00 $ monthly. As windows server with no running roles consumes very little RAM and the potent P100/V100 GPU will be doing the majority of the work when gamming; with 16 GB and 6 cores, you will have more than enough. The more cores you select the more expensive get the Windows license hourly rate.
Now you can create the machine.
I figured out the real cause of the error -6023 in parsec. The Google Cloud Firewall was rejecting the connection from the client sometimes. To solve it you have to add an exception rule in the google cloud firewall.
Once there, click on the ‘create firewall rule’ and follow the image instructions. You don’t have to modify any of these values, they will work in your implementation just as they are in the instructions.
Click to create button to finish creating the rule. Now go to the VM instances page, then click to your instance name and click edit:
Further instructions are in the image:
Then save changes to your VM (at the bottom of the page) and start it up and connect through RDP. We aren’t done yet.
In the virtual machine open parsec and go to settings then to network and in the field ‘Server Start Port’ but only the first of the three UDP ports that you opened in the previously firewall rule:
You don’t have to modify any value on your client-side, with the above instructions the problem is solved.
Setting up the instance
After it is created, turn it up and connect through RDP. Now you have some work to do.
Go to the device manager and comprobate that the video card appears, it will appear without drivers installed.
Install Nvidia GRID video driver: https://go.microsoft.com/fwlink/?linkid=836843
Install parsec: https://s3.amazonaws.com/parsec-build/package/parsec-windows.exe
Install VB-Cable virtual audio driver (razer surround pro can be problematic): http://vincent.burel.free.fr/VirtualAudioApps/VBCABLE_Driver_Pack43.zip
Reboot the machine:
Create another account in the server and add it to the admin’s group. This simple tutorial explains how to do it:
After all that is installed and configured, you can test the functionality by connecting through parsec. When the connection is successful it will appear on the user login screen, then you select the account that you created.
Each time you want to connect and play you have to open the google cloud panel, turn on the machine, connect through RDP to login into the main account where parsec starts automatically, and there you can connect to parsec from your client computer.
Now you can download and install the games that you want.