Verkefni til að bæta við stuðningi við samhliða samsetningu við GCC

Sem hluti af rannsóknarverkefni Samhliða GCC Vinna er hafin við að bæta eiginleika við GCC sem gerir kleift að skipta samantektarferlinu í nokkra samhliða þræði. Eins og er, til að auka byggingarhraða á fjölkjarna kerfum, notar make tólið ræsingu aðskildra þýðandaferla, sem hver um sig býr til sérstaka kóðaskrá. Nýja verkefnið er að gera tilraunir með að veita samhliða samsetningu á þýðandastigi, sem mun hugsanlega bæta árangur á fjölkjarna kerfum.

Til prófunar undirbúinn sérstök samhliða grein GCC, sem býður upp á nýja breytu „—param=num-threads=N“ til að stilla fjölda þráða. Á upphafsstigi innleiddum við flutning á hagræðingu milli aðferða í aðskilda þræði, sem kallast hringrás fyrir hverja aðgerð og auðvelt er að samsíða þeim. GIMPLE aðgerðir sem bera ábyrgð á vélbúnaðaróháðum hagræðingum sem meta samspil aðgerða hver við aðra eru settar í aðskilda þræði.

Á næsta stigi er einnig fyrirhugað að færa RTL hagræðingar milli aðferða í aðskilda þræði, að teknu tilliti til eiginleika vélbúnaðarvettvangsins. Eftir það ætlum við að innleiða samhliða hagræðingu innan aðferða (IPA) sem er beitt á kóðann inni í aðgerðinni, óháð sérstöðu símtalsins. Takmarkandi hlekkurinn í augnablikinu er sorphirðarinn, sem hefur bætt við alheimslás sem gerir sorphirðuaðgerðir óvirkar á meðan hann er í gangi í fjölþráðum ham (í framtíðinni verður sorphirðarinn aðlagaður fyrir multi-þráða framkvæmd GCC).

Til að meta breytingar á frammistöðu hefur verið útbúin prufusvíta sem setur saman gimple-match.c skrána, sem inniheldur meira en 100 þúsund línur af kóða og 1700 aðgerðir. Prófanir á kerfi með Intel Core i5-8250U örgjörva með 4 líkamlegum kjarna og 8 sýndarkjarna (hyperthreading) sýndu lækkun á framkvæmdartíma GIMPLE hagræðingar úr 7 til 4 sekúndum þegar keyrt er 2 þræði og í 3 sekúndur þegar keyrt er 4 þræðir, þ.e. Aukning á hraða samsetningarstigsins sem er til skoðunar náðist um 1.72 og 2.52 sinnum, í sömu röð. Próf sýndu einnig að notkun sýndarkjarna með Hyperthreading leiðir ekki til aukinnar frammistöðu.

Verkefni til að bæta við stuðningi við samhliða samsetningu við GCC

Heildarbyggingartíminn var styttur um það bil 10%, en samkvæmt spám mun samhliða RTL hagræðingu gera það kleift að ná áþreifanlegri niðurstöðum þar sem þetta stig tekur verulega lengri tíma meðan á samantekt stendur. Um það bil eftir RTL samhliða samsetningu mun heildarsamsetningartími minnka um 1.61 sinnum. Eftir þetta verður hægt að stytta byggingartímann um 5-10% til viðbótar með samhliða IPA hagræðingu.

Verkefni til að bæta við stuðningi við samhliða samsetningu við GCC

Heimild: opennet.ru

Bæta við athugasemd