Дурацкая задачка мучает. Логика против интуиции.

Поступает поток команд. Обработка каждой команды состоит из трёх последовательных фаз, занимающих время t1, t2 и t3 соответственно (пусть t1 > t2, t1 > t3). Полное время обработки одной команды равно t1+t2+t3 (это латентность). Если обрабатывать команды в одном потоке, то пропускная способность будет равна 1/(t1+t2+t3). Но можно обрабатывать команды в трёх потоках: организовать три последовательных конвеера. Латентность чуть-чуть увеличится (незначительные накладные расходы на перекладывание команд между конвеерами), но пропускная способность увеличится и будет составлять 1/t1 (определяется скоростью самого медленного конвеера).

А теперь вводится новое условие: t1 > t2 + t3.

Тогда три конвеера не нужны, хватит двух. Первый с пропускной способностью 1/t1, а второй с 1/(t2+t3).

Вот и мучаюсь. Логика говорит, что достаточно всего двух конвееров, а интуиция, зараза такая, твердит, что чем больше потоков, тем "параллельнее", то есть лучше