Up to Main Index                             Up to Journal for March, 2020

                      JOURNAL FOR SUNDAY 1ST MARCH, 2020
______________________________________________________________________________

SUBJECT: A quiet Sunday afternoon
   DATE: Mon  2 Mar 04:02:29 GMT 2020

I’ve just spent a quiet, relaxing Sunday afternoon with my computers. I
compiled Go 1.14 from source on the Raspberry Pi 4. As expected no problems
with kernel bugs or ulimit issues. Time taken was 20 minutes and maximum CPU
temperature was 50.6°C.

I also did some performance testing of WolfMUD on the Raspberry Pi 4. Just
over 5,000 bots — connecting from my desktop[1] — and myself were logged in. I
let things settle down and the bots spread out a bit to lower the location
lock contention. The server was running at about 60-80% CPU (15-20% per core)
and the temperature was around 35-36°C.

Some lines from the server log:


  U[43Mb  -97kb] A[+2265538] O[358090 -5124] T[10463 +0] G[5147 +0] P 5121/5121
  U[43Mb   -6kb] A[+2299590] O[359594 +1504] T[10463 +0] G[5147 +0] P 5121/5121
  U[43Mb +204kb] A[+2334262] O[367042 +7448] T[10463 +0] G[5147 +0] P 5121/5121
  U[43Mb -102kb] A[+2349579] O[361738 -5304] T[10463 +0] G[5147 +0] P 5121/5121
  U[43Mb  -59kb] A[+2384205] O[362833 +1095] T[10463 +0] G[5147 +0] P 5121/5121


All in all, not too shabby :)

I ran the same test in reverse — desktop as server and Raspberry Pi 4 running
the bots — and had quite a surprise. The desktop was also running at about
60-80% CPU (15-20% per core). However there were some significant differences
in the server log:


  U[53Mb +312kb] A[+9744399] O[369583 +3084] T[10469 +0] G[5147 -1] P 5121/5121
  U[53Mb -286kb] A[+9010002] O[362831 -6752] T[10469 +0] G[5147 +0] P 5121/5121
  U[53Mb +419kb] A[+8892214] O[370094 +7263] T[10469 +0] G[5147 +0] P 5121/5121
  U[53Mb  +56kb] A[+8558417] O[367234 -2860] T[10469 +0] G[5147 +0] P 5121/5121
  U[53Mb -187kb] A[+8272705] O[373096 +5862] T[10469 +0] G[5147 +0] P 5121/5121


The desktop was using more memory (+10Mb) and making nearly four times more
allocations. Could this be due to the Raspberry Pi running 32-bit and the
desktop 64-bit code? Both were running the latest code from the Git public dev
branch compiled with Go 1.14. The only difference being a few more test items
in the zinara.wrj zone file on the desktop.

Looks like I need to whip out the memory profiler and see where the allocation
differences are. An interesting distraction more than a problem.

--
Diddymus

  [1] Quad core i5-2400 CPU @ 3.10GHz


  Up to Main Index                             Up to Journal for March, 2020