As a fun side project, I have a co-located raspberry pi. It works exceptionally well and it's quite usefull for light tasks such as a znc bouncer and for doing HTTP redirects.
However, I noticed "free" reported only 448MB of free memory in stead of the expected 512MB. It turns out 64MB is reserved for shared GPU memory. Of course, this is not necessary for a headless colocated server, so I've tuned the GPU memory as follows:
add/replace the following line to /boot/config.txt
and reboot. Now I have 496MB of available memory. I'm not sure if it would be save to set the gpu memory to 0 so I'll just leave it at 16MB for now.