Programiści Ubuntu przeanalizowali skuteczność włączenia optymalizacji PGO.

Firma Canonical opublikowała wyniki oceny zmian wydajności podczas rekompilacji pakietów z włączeniem optymalizacji na podstawie wyników profilowania kodu (PGO — optymalizacja guidowana profilowaniem), która pozwala generować bardziej optymalny kod w oparciu o analizę cech wykonania programu. W trakcie przeprowadzonych prac stwierdzono, że włączenie optymalizacji PGO pozwoliło na obniżenie obciążenia procesora o 5-7% i przyspieszenie czasu kompilacji.

W trakcie przeprowadzonego eksperymentu zmierzono wydajność kompilacji pakietów OpenSSL, GDB, Emacs i Python3.12 w wirtualnym środowisku QEMU, emulującym system RISC-V na komputerze z architekturą x86_64. Różnicę wydajności oceniano dla QEMU skompilowanego z domyślnymi opcjami oraz z włączoną optymalizacją PGO. Testowane pakiety do kompilacji zostały wybrane z uwzględnieniem, że wykorzystują różne języki programowania, a objętość kodu odpowiada 1-6 godzinom kompilacji w emulatorze.

Z praktycznego punktu widzenia eksperyment pozwolił na osiągnięcie wzrostu wydajności środowisk kompilacyjnych dla platformy RISC-V, uruchamianych za pomocą emulatora. Prace kompilacyjne, które wcześniej zajmowały jeden dzień, przy wykorzystaniu optymalizacji PGO zaczęły być realizowane prawie o dwie godziny szybciej, co umożliwiło codzienne wytwarzanie dodatkowych serwerze dwu pełnych kompilacji.

Programiści Ubuntu przeanalizowali skuteczność włączenia optymalizacji PGO.
Programiści Ubuntu przeanalizowali skuteczność włączenia optymalizacji PGO.
Programiści Ubuntu przeanalizowali skuteczność włączenia optymalizacji PGO.
Programiści Ubuntu przeanalizowali skuteczność włączenia optymalizacji PGO.


Źródło: opennet.ru
Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster