"what is the ram also used for? when would I need to upgrade the RAM ?"
RAM is also used for dynamic working storage. Things such as software queues, SLA tests, Netflow stats, routing tables, etc. are found there. Most of the working storage items usally aren't too large, but some can be. Prime example would be a full Internet routing table. One or more instances often will need additional RAM to contain.