Skip to content

Commit

Permalink
Reserve space in multistart vectors (#510)
Browse files Browse the repository at this point in the history
  • Loading branch information
calcmogul authored Apr 30, 2024
1 parent 44bbd46 commit b710c0f
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions include/sleipnir/optimization/Multistart.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -44,11 +44,15 @@ MultistartResult<DecisionVariables> Multistart(
solve,
std::span<const DecisionVariables> initialGuesses) {
std::vector<std::future<MultistartResult<DecisionVariables>>> futures;
futures.reserve(initialGuesses.size());

for (const auto& initialGuess : initialGuesses) {
futures.emplace_back(std::async(std::launch::async, solve, initialGuess));
}

std::vector<MultistartResult<DecisionVariables>> results;
results.reserve(futures.size());

for (auto& future : futures) {
results.emplace_back(future.get());
}
Expand Down

0 comments on commit b710c0f

Please sign in to comment.