We can further understand what is going on, when we know the calling stack trace, which results in the slow close operation. That is more than a factor of 100.000 faster! Something fishy is going on here. If we look at the last line of the snippet, we can even see an example, closing file descriptor 29 only takes 6 µs. This result is unexpected, as a simple operation like close should be much faster. The main delay is caused by the close operations, which takes up to 100 ms (not included in the snippet). Overall, this operation takes around 1.4 s, it seems we found, where the pause originates.
Using getdents the program iterates over the directory entries, which are subsequently opened, checked for some flags and closed. The snippet starts with opening /dev/input, which is a folder containing input devices, with the resulting file descriptor 29. PapersPlease > log.txt and sift through the mess. So I record some data using strace -T -t. Without any flags every call is reported which can be overwhelming, but without a hint where to look, I have to record everything.Īfter some digging through useful options, I discover the -T and -t flags which record the time spent in the syscall and the timestamp when calling. In its default configuration it runs a program and records all system calls, which a program makes, and reports them on the console. And here I am assuming that the stutters are not inherent in the game logic, because the 32-bit version works correctly. Linux features a whole suite of tools to debug many different aspects from performance to correctness. So let’s investigate where the pauses are coming from. There has to be an answer why the client stutters, the developers must have tested this configuration! As a side note, I am wondering if the 64-bit version worked at some point, but without a good starting point it is hard to test. One comment says there is “a half a second freeze every few seconds”, which seems similar to my experience.
#Can you stop the terrorist attacks in papers please game download
Unlucky for me, GOG only has a download for 64-bit on Linux. Some are reporting that the 64-bit version stutters, whereas the 32-bit version works. Looking at ProtonDB, people are complaining about stutters. After starting a game it was clear that the animations were pausing every few seconds for around a second, which made it almost unplayable. Installing and starting the game from GOG was easy enough, but starting in the main menu, something was off. When I wanted to play some Papers Please I was delighted to see that a native port exists, which should make it easy to run it. Most of the time when problems arise, games refuse to start, but some workaround exists to make them run. To be fair, most of these were not designed to run on linux, but the awesome Proton and its main project wine make it easy to run most games I am interested in seamlessly.
Since I switched to Linux some time ago, I had my fair share of problems with running games on Linux. Fixing stutters in Papers Please on Linux – Blogįixing stutters in Papers Please on Linux Tue Dec 28, 2021