thanks Raygozak,
I started to run humann3 with gnu parallel, and it is much faster
ls merged_filtered_fastq/ | parallel --eta -j 10 --load 90% --noswap 'humann3 --input merged_filtered_fastq/{} --metaphlan-options "-t rel_ab_w_read_stats" --search-mode uniref90 --output results --memory-use maximum --threads 150'
Using parallel, the program is able run the second(or third ... depends on -j parameter, your mem size and your number of cores) sample while huamnn3 is writing result of first sample on disk.