Halite Home

Spurious Timeout Issues


#1

Hi all, I'm getting started with this project today. I'm having strange, sporadic timeout issues.

Here's an example game: https://2016.halite.io/game.php?replay=ar1478884304-2510894612.hlt

3 of the 4 players time out at the same time. Is this an issue with the server-side environment?

Additional timing questions:

  1. In 2011 Ants challenge, the server provided an interface to check how much time was left in a turn, so that you could stop AI processing without timing out. Does such a thing exist here?
  2. At the end of the game, does the server send a signal to indicate that it's over? Or does it simply kill the thread/process?

#2

I agree here's another https://2016.halite.io/game.php?replay=ar1478886446-358214755.hlt

There are plenty in my history, including two others that I posted about in "Interesting replays" topic.


#3

My bot just timed out aswell, never done that before.

Whend did you guys bots timeout? So we can compare timestamps to see if it is server sided.


#4

It feels like a resource load / scaling problem, there's very low likelihood that, for example, four different bots would all time out within one or two frames of each other. It would be good to find the affected games and cancel them because the scoring is effectively random.


#5

My bot has been "timing out" but the error.log says that it took 285 ms for a turn (i thought the limit was 1 second?)


#6

I've also noticed this behavior, I re-submitted a previous build that had not been timing out (for some 900 games) to see if I had just made some mistakes in the future iterations, but it seems this one experiences it as well.

Side note: It looks like many of the higher ranking bots aren't as subject to the issue because the frequency of played games is a lot lower. I'm curious how the matchups are decided and if positions might tend to 'solidify' after a certain amount of games.


#7

yeah, it's very frustrating :-(. all of my losses are timeouts.


#8

Looking into the issue! Thanks for your patience.


#9

Let me know if you guys need any help. Noticed it runs on a sandbox via docker.


#10

I'm also happy to help if you guys need it


#11

Thanks for the offers @k2xl and @arseniybanayev. We applied a temporary fix (at around 6:45 EST). Since then, havent gotten any timeouts on the random bot that is submitted under my account.


#12

Thx @truell20! I'll resubmit mine. What was the issue? Load or something like that?


#13

Not totally sure. Looking to identify the root cause of the problem.


#14

I was going to suggest you use the "CPU time elapsed for thread" clock rather than the wall-time clock, but that doesn't work so well in the forked-process execution model you're using.


#15

Yea there are a number of problems of other problems with that approach, including:

It's pretty hard for bots to keep track of timeouts. Bots can stall and use very little cpu but a bunch of wall time. Also means editing the environment which we'd like to avoid, since it needs to be stable at all costs.


#16

I'm still getting these timeouts / errors
https://2016.halite.io/game.php?replay=ar1478912561-702728833.hlt

Do i need to resubmit?


#17

You don't need to resubmit. Doesn't seem to be of the flavor that others were describing, because only you timed out, not everyone else.

Have you looked at the error log? Could it just be that your bot got slow as you accrued a ton of pieces?


#18

So I guess it's sort of tough to know, because the error log doesn't really show anything.

If I run it locally, even with a big grid, it still takes less than 1 second for a move (it would be nice if when running locally the same errors prop up)


#19

https://2016.halite.io/game.php?replay=ar1478915945-4086645268.hlt I actually just played against you and it "timed out"

Looking at the log, the last move took around 700ms


#20

Could you paste the last 20 ish lines here.