Hey @0xcc , welcome to Terminal.
Important note for future humans
This information is unlikely to be accurate if you are reading this after Summer 2021, please make a new post requesting more recent info. I will consider making a more permanent solution to provide transparency into machine-setup if there is demand for this at this point.
Terminal setup
The overall concern being raised is related to the lack of transparency into our machine setup, so ill address this holistically first, and then address specific points you raised.
We are a small team, and we run millions of matches each year between thousands of GB of algos executing arbitrary user code. To facilitate this, we use a decently complicated cloud compute setup that we adjust a few times a year.
An algo running in the spring competition season can expect to run with 1 GCP VCPU and 1 GB memory. You will be able to allocate more, but might start running into issues and performance hits above 1GB.
“1 VCPU” is basically meaningless to most people. Speed should be consistent across ranked and tournament games, so you can look at your ranked matches as a benchmark for your algo’s speed.
Misc details: The OS you will be running on is currently ubuntu:18.04. Max size for an algo is currently 50MB, though most algos are much smaller.
Addressing specific concerns
No and no. We run millions of matches each season, and a change like this will impact very few users and significantly increase operational costs.
Games played on playground use a continuous connection and are handled in a completely different way, and playground game’s performance is not comparable to online matches.
Random matchmade games run on the exact same setup as tournament matches, so you can expect consistency between these kinds of matches.
This has not been a major problem in the past, though I could imagine it happening to algos that use very high amounts of memory, or make system level calls.
Summary
Hopefully this was helpful, I get why its annoying that we are not more transparent about this stuff but hopefully its understandable. At the end of the day, the setup we have should “Just work” for most people’s strategies.
Working around constraints is an important skill for developers, and we are content with the setup we are currently running. We are always open to more feedback though, let us know your thoughts.