Please try this and paste the output:
import psutil, o/'s
mem = psutil.phymem_usage()
print "psutil: total=%s used=%s free=%s\n" % (mem.total / 1048576,
mem.used / 1048576,
mem.free / 1048576)
os.system('free -m')
We had a similar issue which is supposed to be fixed now (0.4.1 version):
http://code.google.com/p/psutil/issues/detail?id=232
Also, what platform are you using? 32 or 64 bit? What psutil version?
Regards,
G.