Tionscadal chun tacaíocht do chomhthreomharú an phróisis tiomsaithe a chur le GCC

Mar chuid de thionscadal taighde Comhthreomhar GCC Tá obair tosaithe chun gné a chur le GCC a cheadaíonn an próiseas tiomsaithe a roinnt ina roinnt snáitheanna comhthreomhara. Faoi láthair, chun luas tógála ar chórais il-lárnacha a mhéadú, úsáideann an áirgiúlacht déanamh próisis tiomsaithe ar leithligh a sheoladh, agus tógann gach ceann acu códchomhad ar leith. Tá an tionscadal nua ag tástáil le comhthreomharú a sholáthar ag leibhéal an tiomsaitheora, rud a d'fhéadfadh feabhas a chur ar fheidhmíocht ar chórais illárnacha.

Le haghaidh tástála ullmhaithe brainse comhthreomhar ar leith de GCC, a thairgeann paraiméadar nua “—param=num-threads=N” chun líon na snáitheanna a shocrú. Ag an gcéim tosaigh, chuireamar i bhfeidhm aistriú leas iomlán a bhaint idir nósanna imeachta i snáitheanna ar leith, ar a dtugtar go timthriallach do gach feidhm agus is féidir iad a chomhthreomharú go héasca. Cuirtear oibríochtaí GIMPLE atá freagrach as leas iomlán a bhaint as crua-earraí a dhéanann meastóireacht ar idirghníomhú feidhmeanna lena chéile i snáitheanna ar leith.

Ag an gcéad chéim eile, tá sé beartaithe freisin leas iomlán a bhaint as RTL idir-nós imeachta a aistriú go snáitheanna ar leith, ag cur saintréithe an ardáin crua-earraí san áireamh. Tar éis sin, tá sé beartaithe againn comhthreomharú leas iomlán a bhaint intra-nós imeachta (IPA) a chuirtear i bhfeidhm ar an gcód taobh istigh den fheidhm a chur i bhfeidhm, beag beann ar shonraí an ghlao. Is é an nasc teorannaithe go dtí seo ná an bailitheoir truflais, a bhfuil glas domhanda curtha leis a dhíchumasaíonn oibríochtaí bailithe truflais agus iad ag rith i mód il-snáithithe (sa todhchaí déanfar an bailitheoir truflais a oiriúnú chun GCC a fhorghníomhú il-snáithithe).

Chun athruithe ar fheidhmíocht a mheas, ullmhaíodh sraith tástála a chruinníonn an comhad gimple-match.c, a chuimsíonn níos mó ná 100 míle líne de chód agus 1700 feidhm. Léirigh tástálacha ar chóras le CPU Intel Core i5-8250U le 4 cores fisiceacha agus 8 fíorúil (Hyperthreading) laghdú ar an am forghníomhaithe d'uasmhéaduithe GIMPLE Intra Nós imeachta ó 7 go 4 soicind nuair a bhí 2 snáithe á rith agus go 3 soicind nuair a bhí 4 á rith. snáitheanna, i.e. Baineadh amach méadú ar luas an chéim tionóil faoi bhreithniú 1.72 agus 2.52 uair, faoi seach. Léirigh tástálacha freisin nach bhfuil feidhmíocht mhéadaithe mar thoradh ar úsáid a bhaint as croíleacáin fhíorúla le Hyperthreading.

Tionscadal chun tacaíocht do chomhthreomharú an phróisis tiomsaithe a chur le GCC

Laghdaíodh an t-am tógála iomlán de thart ar 10%, ach de réir réamhaisnéisí, ceadóidh optimizations RTL comhthreomhar a bhaint amach torthaí níos inláimhsithe, ós rud é go dtógann an chéim seo i bhfad níos mó ama le linn tiomsaithe. Timpeall tar éis comhthreomharú RTL, laghdófar an t-am tionóil iomlán 1.61 uair. Tar éis seo, beifear in ann an t-am tógála a laghdú 5-10% eile trí leas iomlán a bhaint as IPA a chomhthreomharú.

Tionscadal chun tacaíocht do chomhthreomharú an phróisis tiomsaithe a chur le GCC

Foinse: oscailtenet.ru

Add a comment