게임 서버는 코어 수보다 한 코어 속도가 중요한 이유
게임 서버 사양을 물으면 코어 수부터 보는 분이 많은데, 대부분의 게임 서버는 한 코어가 얼마나 빠른지가 더 중요합니다.
게임 서버는 정해진 박자마다 세상을 한 번씩 계산합니다. 마인크래프트는 1초에 20번, 그러니까 50ms 마다 몹, 레드스톤, 떨어진 아이템, 작물, 물 흐름까지 전부 계산하고 결과를 보냅니다. 50ms 안에 못 끝내면 다음 박자가 밀리고, 그게 사람들이 말하는 렉입니다.
이 계산은 대부분 코어 하나가 순서대로 합니다. 좀비가 때리면 체력이 줄고, 밀려나고, 밀려난 자리의 압력판이 눌리고, 문이 열립니다. 앞의 결과를 뒤에서 바로 쓰기 때문에 여러 코어에 나눠 맡기기 어렵습니다.
그래서 웹 서버와 반대입니다.
- 웹 서버: 서로 상관없는 요청이 많아서 코어 수가 중요합니다
- 게임 서버: 세상 하나를 순서대로 계산해서 한 코어 속도가 중요합니다
한 코어 속도는 클럭(GHz)만 보면 안 되고 세대도 봐야 합니다. 새 세대 CPU 는 같은 클럭에서 일을 더 많이 합니다. 오래된 서버용 제온이 코어는 많은데 게임 서버로는 아쉬운 이유가 이겁니다.
다만 친구 몇 명이 하는 가벼운 서버는 한 박자에 할 일이 적어서 웬만한 CPU 로도 넉넉합니다. 차이가 드러나는 건 무거운 모드팩, 장치를 잔뜩 지은 오래된 월드, 사람이 많은 서버입니다.
코어가 아예 상관없는 건 아닙니다. 월드 저장, 청크 불러오기, 접속 처리 같은 일은 다른 코어로 갑니다. 친구 서버라면 2~4코어로 충분합니다.
