O(N^3), запускается на 16 ядрах одновременно, скажем, происходит несколько вызовов этой функции. N порядка 1000-2000. Внутри функции нужно временное хранилище размера O(N^2), которое опустошается при выходе из функции. Могу я пренебречь оптимизацией выделения памяти если основное алгоритм на порядок больше?
Там на самом деле надо с кешом не про*баться
Ну, тут значительный объём памяти, миллион - 10 миллионов объектов, наверное, уже стоит оптимизировать... Сделай std::vector < myobj > pool(N*N); и всё.
https://www.youtube.com/watch?v=dFquxC6qTSA&t=1777s
Обсуждают сегодня