Quando lemos um arquivo, usamos o buffer para jogar para a memória uma parte do arquivo que será processada. Então, quanto menor o buffer, menos memória será exigida para processar todo o arquivo, mas serão necessárias mais chamadas de leitura ao arquivo original (que pode ser custoso).
Já num extremo, ter um buffer do tamanho do arquivo significa ter o arquivo inteiro na memória para ele ser processado, o que pode causar problemas de falta de memória caso seu arquivo seja muito grande.
Minha sugestão é evitar um buffer do tamanho do arquivo. Geralmente, 1024 (uma potência de 2) é um valor comum para ele que funciona para a maioria dos casos.