Переупорядочение довольно маловероятно на практике при запуске второго фильтра.
parallel_pipeline
работает таким образом, что один и тот же поток максимально долго помещает данный элемент в конвейер (в вашем конвейере все фильтры после первого параллельны, поэтому один и тот же поток будет выполняться все три фильтра для предмета). Затраты на то, чтобы поток переместил элемент в следующий фильтр, намного меньше того, что требуется другому потоку, чтобы украсть задачу для следующего элемента, обработать первый фильтр, а затем также перейти ко второму. Переупорядочение все еще возможно, если, например, ОС прервет первый поток, но довольно маловероятно.
Чтобы повысить шансы наблюдать за выполнением не по порядку, переместите операторы печати в третий фильтр и добавьте случайное количество «работа» ко второму, так что время для обработки предмета меняется.