Продуктивність - Збільшення швидкості - CiupaCabra

Широке питання, яке я знаю, але:

швидкості

Хтось має загальні поради щодо збільшення швидкості виконання програм Fortran?

6 відповідей

Загальна відповідь на загальні питання:

Хоча інші запропонували код, перш ніж задуматися про його зміну.

АЛЕ найкраще, що ви можете зробити, це уважно прочитати посібник компілятора, рядок за рядком, слово в слово, і пильно звернути увагу на всі варіанти, які він пропонує. З мого досвіду (я маю великий досвід роботи з HPC для обчислювальної електромагнетики, не те, що ви повинні вірити тому, що читаєте тут!) Ви отримуєте найбільше хітів за свої гроші в оптимізації продуктивності за допомогою розумного використання компілятора.

Після того, як ви вичерпали можливості компілятора (і, як запропонував один з інших респондентів, переконайтеся, що у вас хороший компілятор - вони не дорогі, і я маю на 40% зменшення часу роботи для більшості програм, починаючи від g95 і закінчуючи заплатив за компілятор), то вам НЕ слід починати робити такі речі, як:

- інші речі, якими я завжди користувався вдень.

Більшість цього кодування виконується зараз, краще, ніж нові форми життя на основі вуглецю, ми можемо зробити це, оптимізуючи компіляцію.

Якщо вам потрібно бути майстрами, майструйте з доступом до пам'яті - наприклад, надайте доступ до масиву, щоб скористатися перевагами кеш-пам’яті. Якщо ви це зробите, параметризуйте розміри дощок (і т. Д.) Так, що коли ви перенесете його в іншу архітектуру наступного року або наступного року, вам потрібно буде змінити лише кілька параметрів, а не змінювати код знову.

Нарешті, розважтесь, оптимізація роботи програм Fortran - чудовий спосіб провести день у робочому стані!