Visual C++ a procesor dwurdzeniowy

Uwaga! Informacje na tej stronie mają ponad 5 lat. Nadal je udostępniam, ale prawdopodobnie nie odzwierciedlają one mojej aktualnej wiedzy ani przekonań.

# Visual C++ a procesor dwurdzeniowy

Thu
13
Dec 2007

Jako szczęśliwy posiadacz maszyny z dwurdzeniowym procesorem postanowiłem pomyśleć o przyspieszeniu kompilacji w Visual C++ 2005 i oto, do czego doszedłem po "dialogu" z Google.

Po pierwsze zła wiadomość: Visual C++ nie potrafi kompilować równolegle wielu plików. Właściwie to potrafi (za liczbę równoległych kompilacji odpowiada ustawienie Tools > Options > Projects and Solutions > Build and Run > maximum number of parallel project builds), ale tylko kiedy kompilujemy na raz wiele projektów z jednej solucji.

Po drugie, znalzłem coś takiego: IncrediBuild. Niestety, to jest program płatny, a w dodatku służy raczej do rozpraszania kompilacji na wiele komputerów. Nie o to nam chodzi.

Po trzecie, istnieje mały i darmowy dodatek do Visual C++ zrównoleglający kompilację na wiele plików jednocześnie - MPCL. Wypróbowałem go.

Po czwarte i najważniejsze, istnieje przełącznik kompilacji /MP, który sprawia, że Visual C++ automatycznie zrównolegla kompilację pojedynczego pliku znacznie ją przyspieszając. Nie znajdziesz tego przełącznika jako pozycji na listach opcji projektu. Musisz go ręcznie dopisać w C/C++ > Command Line > Additional Options. Też go sprawdziłem.

Oto wyniki moich eksperymentów. W trybie Release kompilacja trwa o wiele dłużej, bo dochodzi stały, duży czas linkowania, którego nie da się zrównoleglić.

Wnioski: 1. Użycie przełącznika /MP daje duże przyspieszenie kompilacji. 2. Użycie programu MPCL nie daje dalszego przyspieszenia, choć zastosowanie jego samego, bez przełącznika /MP, również przyspiesza kompilację tak jak ten przełącznik.

Wniosek wniosków: Programu MPCL nie warto instalować, natomiast warto zawsze stosować przełącznik /MP, bo znacznie przyspiesza kompilację na maszynie wielordzeniowej.

Comments | #visual studio #c++ Share

Comments

STAT NO AD
[Stat] [STAT NO AD] [Download] [Dropbox] [pub] [Mirror] [Privacy policy]
Copyright © 2004-2019