This cost function calculates the amount of free memory (RAM) available on the node. Because the scheduler minimizes cost, if this cost function is used as a weight of +1, by doing:
compute_fill_first_cost_fn_weight=1.0
then the scheduler will tend to "fill up" hosts, scheduling virtual machine instances to the same host until there is no longer sufficient RAM to service the request, and then moving to the next node
If the user specifies a weight of -1 by doing:
compute_fill_first_cost_fn_weight=-1.0
then the scheduler will favor hosts that have the most amount of available RAM, leading to a "spread-first" behavior.

