Memory usage is difficult to determine in Linux.
It's best to look at it from a few different sources to see what is going on.
One is the /proc/meminfo file
then top is good.
Then free is good also.
I attatched output for 'free' on my system.
The first line shows total used, the second line shows what memory is actively used and adds the buffers and cache to the 'free' collumn.
So I am only realy using 415 megs and nearly 600 megs is files buffers/caches for files and applications.
For comparision here is from top:
Mem: 1028168k total, 1009636k used, 18532k free, 136340k buffers
Swap: 1951888k total, 12348k used, 1939540k free, 447364k cached
I'll see if I can find a bug report or something with Ubuntu and Samba uploads being very slow.