No seu caso, você está chamando de um loop para que você não esteja realmente executando nada em paralelo. Tudo o que você está fazendo é adicionar a sobrecarga de chamadas paralelas no segundo exemplo, mas ainda está apenas executando os arquivos de maneira única.
Exemplo
Isso pode ajudar você a ver o que está acontecendo.
sem paralelo
$ time for i in {1..2}; do sleep 2;done
real 0m4.004s
user 0m0.001s
sys 0m0.002s
com paralelo
$ time for i in {1..2}; do parallel "sleep 2" < /dev/null;done
real 0m4.574s
user 0m0.245s
sys 0m0.089s
Uma alternativa
Você pode chamar parallel
desse jeito.
$ time parallel --gnu time wc -l ::: 1.txt 2.txt
real 0m0.007s
user 0m0.001s
sys 0m0.000s
1000 1.txt
real 0m0.003s
user 0m0.000s
sys 0m0.001s
1000 2.txt
real 0m0.207s
user 0m0.120s
sys 0m0.052s
Aqui podemos ver que há sobrecarga em ter que chamar 'paralelamente ao terceiro agrupamento de tempo mostrando a quantidade total de tempo gasto para executar o comando paralelo inteiro.