Выиграет ли производительность этой команды `grep` или`zgrep` больше памяти или более быстрый процессор?
У меня есть следующие команды:
time grep -F -f 'in2.txt' test.fastq
time zgrep -F -f 'in2.txt' test.fastq.gz
Существует около 30 поисковых терминов для файлов размером ~5 ГБ. Однако я заметил, что на одном компьютере поиск занимает более 3-5 раз, это происходит при раскрутке Amazon. Поэтому мне интересно, что влияет на скорость? Должен ли я раскрутить ECS, которая имеет больше памяти или лучше скорость процессора?
1 ответ
CPU и I/O. Если вы ищете небольшой (30 довольно небольшой) набор терминов, вы, скорее всего, будете связаны с вводом / выводом и, вероятно, будете связаны с процессором. Вы не будете связаны с памятью.
[ПО МОЕМУ МНЕНИЮ]
Правильный ответ, конечно, это проверить. Вы можете сделать это несколькими способами, в том числе открыть два терминала и запустить dstat во время выполнения соответствующей команды. Если для завершения требуется пара секунд, вы должны понять, какие ресурсы максимально использованы (до 100% или до некоторого стационарного значения), а какие нет.