Una cosa es que tengas toda esa memoria y otra cosa es que el programa esté diseñado para usar toda esa memoria de una tacada.
Efectivamente si el programa es de 32 bits no va a usar más de 2 o 4 (depende del programa y la configuración). Si el programa es de 64 bits, si no coge más memoria puede ser porque lo tiene así de establecido o porque realmente no la necesita. Personalmente, me inclino a lo segundo.