У меня сейчас очень много работы по расчету эволюции различных конфигураций задачи трёх тел. Для моделирования несколько лет назад была написана программа, которая использует несколько специфических алгоритмических трюков, о которых я здесь не стану распространяться, позволяющих на порядки уменьшить ошибку численного интегрирования и избежать
(
Read more... )
Comments 13
А еще можно GCC поновее взять. Потому что вообще-то уже 7.1 вышла.
Reply
Reply
Поскольку в дистрибутиве ubuntu clang есть, причем относительно недавней версии 3.8, можно и его еще попробовать.
Reply
Reply
/O2 /Ob2 /Oi /Ot /Oy /GL /GS- /LTCG /fp:fast
а также, учитывая, что Вам надо оптимизировать на конкретной машине и можно пожертвовать портируемостью, то стоит поиграться с опцией /arch:...
Упоминание "питоновского скрипта" навело на мысль о том, что если он достаточно часто вызывает вторичные программы, то загрузка и запуски программ может убивать довольно много времени, а если просто пускает 4 программы, которые работают минут по 15 - тогда, конечно, это неважно
Reply
Да, каждая нитка выполняется не менее 10 минут, пайтоновский скрипт попросту запускает их отдельными Popen (4 или 8 - в зависимости от того, сколько логических процессоров он обнаруживает) и собирает их stdout'ы в один файл и, как только один из логических процессоров освобождается, запускает следующий Popen.
Reply
З.Ы.
И, что касается магии, то иногда помогает смешение целочисленной и floating point-арифметики, т.к. компилятор тогда распараллеливает команды между процессором и сопроцессором.
Reply
По идее gcc должен генерировать одинаковый код для одного процессора.
Разница при виртуализации -- это разный thread scheduling и симуляция IO.
NTFS -- не самая лучшая система, поэтому gcc под VB,
где виртуальный диск очень хорош (какой кстати и какая file system?)
обгоняет родной gcc mingw, который использует NTFS.
Ну а gcc под линухом по любому самый быстрый -- так и должно быть ;)
Reply
Reply
Reply
- добовить оптимизацию под процессор -march=native -mtune=native
- попробовать icc
Reply
Reply
Leave a comment