Я пытаюсь написать параллельную версию игры жизни Конвея.Я могу заставить все компилироваться и работать правильно, но я не вижу никакого ускорения.У меня есть симуляционный класс жизни, который я хочу разделить на 4 поколения, которые можно делать параллельно.
`future<vector<vector<int> > > first_quarter = async(launch::async, [&]{
return GameOfLife_parallel::SimulateLife(
board, 0, (life_cycles/4));});
future<vector<vector<int> > > second_quarter = async(launch::async, [&]{
return GameOfLife_parallel::SimulateLife(
new_board = first_quarter.get(), (life_cycles/4),(life_cycles/2));});`
Это основная идея, где я пытаюсь разделить поколения на 4 отдельных потока.,Я считаю, что проблема заключается в том, что для каждого последующего квартала мне нужно вызывать get () на предыдущей итерации, что делает параллель незначительной.Есть ли где-нибудь вокруг этого или как-нибудь еще, где я могу видеть значительное ускорение?