Я занимаюсь научными вычислениями с использованием c ++ с парой базовых процедур на языке Fortran в дистрибутиве Xubuntu 12.10. Все шло хорошо в течение многих лет. Внезапно сегодня, когда я возился с моим кодом, время для завершения каждой итерации резко упало бы на полпути. Поняв, что я сделал ошибку, я вернулся к старой версии git, переделал все это и все еще имел ту же проблему. Я запустил код на другом компьютере, и время на одну итерацию остается постоянным. В чем может быть проблема?
Наилучшее предположение: ваш процессор перегревается. Таким образом, процессор дросселирует себя, чтобы предотвратить повреждение. Ваш код, вероятно, вызывает скачки уровня нагрева. Следовательно, когда вы проходите «половину пути», ваш процессор достаточно нагрет, когда обнаруживает, что ему нужно замедлиться.
Убедитесь, что вентиляторы вашего корпуса, вентиляторы процессора и любое другое охлаждение на вашей машине работают правильно. Может быть, просто отключите компьютер на некоторое время, чтобы дать ему остыть, затем перезагрузка / перезагрузка решит проблему.
Других решений пока нет …