Что больше ➜ 2^π или π^2?
Два ядра загружены на 100%, а программа тормозит: где искать причину
Профилировщик показывает простой инкремент, оба ядра заняты, алгоритм не изменился. Но в эксперименте перестановка двух целых чисел в структуре сократила время работы с 4284 до 841 мс. Причина была в размещении данных. При промахе кэша ядро ждёт чтения из памяти сотни тактов. При промахе TLB, кэша соответствий виртуальных и физических адресов, процессор дополнительно обходит таблицы страниц. А при...