2,8 ГБ буферов — это довольно много. Это почти наверняка означает, что что-то выполняет необработанный ввод-вывод на блочных устройствах или обходит кеш файловой системы. Это, в свою очередь, означает, что либо драйверы, либо то, что вы на них используете, не совпадает.
echo 53567782 | awk '{x=$1; split("B KB MB GB TB PB",type); for(i=5;y < 1;i--) y = x / (2**(10*i)); printf("%.2f %s\n",y,type[i+2])}'
51.09 MB
Обратите внимание, что я заменил x=ARGV[1]
на x=$1
.