LTO: waa maxay iyo sida loogu isticmaalo Gentoo

Waa maxay LTO?

LTO waa soo gaabinta ereyga Isku Xirnaanshaha Waqtiga. Waa hawlgal kaas oo soo-ururiyuhu dib u dhigaayo hagaajinta xilligan isku xirka feylasha ilaha, oo kuu oggolaanaya inaad aragto dhammaan faylasha ka kooban hal fulin oo keliya hal feyl, oo sidan oo kale ugu adeegso niyadsamooyin qaab wax ku ool ah.

Wixii macluumaad dheeraad ah: wiki ee GCC.

Si aad u aragto waxtarka iyo cilladaha LTO: Astaamaha Phoronix

Waxyaabaha maskaxda lagu hayo

  • Waa xasillooni la'aan, waxay ku keeni kartaa dhibaatooyin xirmooyinka qaarkood.
  • Xirmooyinka qaar ayaa ku guuldareysan doona inay soo uruuriyaan (waxbadan oo ku saabsan sida tan loo hagaajiyo goor dambe).
  • Waxaa lagugula talinayaa inaad isticmaasho xiriiriye Gold.
  • Usa siempre nooca ugu dambeeyay ee GCC.

Gold, marka lagu daro taageerida astaamaha horumarsan ee ka dhigaya mid soo jiidasho leh in la isticmaalo LTO, way ka dhakhso badan tahay gnu ld, gaar ahaan markay tahay barnaamijyada waaweyn, halka ay ka noqon karto 5 jeer ka dhakhso badan. Si aad u isticmaasho, orod:

binutils-config --linker ld.gold


Adeegsiga LTO: habka lagu taliyay

Halkii aad ka hawl gelin lahayd LTO adduunka oo dhan (oo dhibaato u horseedi kara) waxaa fiican in lagu kiciyo xirmooyinka aan rabno. Sidan, kaliya xirmooyinka aad rabto inaad ka faa'iideysato LTO iyaga ayaa lagu soo ururiyey qaabayntaas, ama ka ilaalinaya waqtiyada isku soo ururinta gaabis ee barnaamijyada aan ka faa'iideysan. Tan waxaa lagu gaari karaa habka soo socda:

Buugga / etc / portage / env, waxaan ku abuureynaa feylka LTO.conf oo waxaan ku darnaa khadadka soo socda:

CFLAGS="${CFLAGS} -flto=5" #pon en -flto los hilos  de tu CPU + 1
CXXFLAGS="${CXXFLAGS} -flto=5" #igual que arriba
LDFLAGS="${LDFLAGS} -fuse-linker-plugin" #solo si usas Gold, es mejor.

Marka, si loo isticmaalo LTO xirmo, waxaan kaliya ku qasbanaaneynaa inaan ku dhigno magaceeda (magaca oo buuxa, www-client / firefox, halkii laga dhigi lahaa Firefox) feylka xirmo.env, wadajir ahaan LTO.conf midigtaada Hoos waxaa ku yaal tusaale:

app-emulation/wine LTO.conf
www-client/firefox LTO.conf
sys-devel/gcc LTO.conf
kde-base/kdelibs LTO.conf

Haatan waa inaan aruurino xirmooyinka aan rabno inay isticmaalaan LTO.


Adeegsiga LTO aduunka oo dhan (laguma talinayo)

Halkii aad codsan lahayd LTO xirmo xirmo, waxaan sidoo kale u adeegsan karnaa adduunka (taas oo ah waxa aan isticmaalo). Si aad u dalbato, talaabooyinka la raacayo waa:

Waxaan wax ka bedelnaa faylka /etc/portage/make.conf oo waxaan ku darnaa waxyaabaha soo socda (waa isku safaf isku mid ah feylka) LTO.conf):

CFLAGS="${CFLAGS} -flto=5" #pon en -flto los hilos  de tu CPU + 1
CXXFLAGS="${CXXFLAGS} -flto=5" #igual que arriba
LDFLAGS="${LDFLAGS} -fuse-linker-plugin" #solo si usas Gold, es mejor.

Dhanka kale, waxaan abuuraynaa faylka /etc/portage/env/no-LTO.conf oo waxaan kudarineynaa xariiqyada soo socda:

CFLAGS="${CFLAGS} -fno-lto -fno-use-linker-plugin"
CXXFLAGS="${CXXFLAGS} -fno-lto -fno-use-linker-plugin"
LDFLAGS="${LDFLAGS} -fno-lto -fno-use-linker-plugin"

Iyo faylka xirmo.env Waxaan ku dhejin doonaa xirmooyinka ay soo uruurintoodu ku fashilantay LTO. Waxa uu halkan aniga xirmo.env (la soco inaan isticmaalo nolto.conf halkii maya-LTO.conf).

Waa inaan sidoo kale ku darnaa LTO si ISTICMAAL doorsoome ah samee.conf, tani waa lama huraan sababtoo ah kuwa soo dhisay Gentoo iyagu (si tartiib tartiib ah) ayey ugu darayaan balastarro ikhtiyaari ikhtiyaari ah u adeegsiga ku habboonaynta xirmooyinka qaarkood.

Marka tan la dhammeeyo, aan sii wadno dib u soo celinta dhammaan xirmooyinka nidaamka:

emerge -e @world @system --keep-going &> errores

Adoo adeegsanaya – socodsiin, waxaan u sheegeynaa Xariirka in la iska indho tiro khaladaadka, halka &> u wareeji wax soo saarka cayayaanka oo dhan feyl la yiraahdo qaladaad, u isticmaal faylkan si aad u aragto xirmooyinka ay ku fashilmeen inay soo uruuriyaan kuna dar liiska xirmo.env.

The &> waxay naga xayuubineysaa wax soo saarka oo dhan, haddii aan rabno inaan aragno wax soo saarka geeddi-socodka, waa inaan u adeegsannaa (asal ahaan) amarkan:

tail -f /var/log/emerge.log

Taasina waa intaas, waxaan rajeynayaa inaanan ka tagin wax shaki ah, haddii taasi waan ku farxi doonaa oo maqaal ayaan ka qori doonaa Furan iyo / ama Graphite.


Ka tag faalladaada

cinwaanka email aan la daabacin doonaa. Beeraha loo baahan yahay waxaa lagu calaamadeeyay la *

*

*

  1. Masuul ka ah xogta: Miguel Ángel Gatón
  2. Ujeedada xogta: Xakamaynta SPAM, maaraynta faallooyinka.
  3. Sharci: Oggolaanshahaaga
  4. Isgaarsiinta xogta: Xogta looma gudbin doono dhinacyada saddexaad marka laga reebo waajibaadka sharciga ah.
  5. Kaydinta xogta: Macluumaadka ay martigelisay Shabakadaha Occentus (EU)
  6. Xuquuqda: Waqti kasta oo aad xadidi karto, soo ceshan karto oo tirtiri karto macluumaadkaaga.

  1.   msx dijo

    Gentoo, meh ...
    Aynu aadno waxa muhiimka ah: Graphite!

    1.    x11tete11x dijo

      Doqonka iyo ssensual Graphite xD, waa wax aan caadi aheyn oo qarxa nidaamkaaga xD, waxaan xasuustaa in markii iigu dambeysay ee aan istcimaalo, ay igu filneyd in la sameeyo taas oo soo noqnoqota 50 jeer sameynta "ogeysiin-dir KDE <3" si markaa loogu celiyo tirada 50 , deegaanku wuxuu ku dillaaci doonaa cadaabta hahahahaha, haa, waxaan u socday farts xD

    2.    wadadeeye dijo

      Waxaan horey u idhi wali waan dhiirigaliyay oo waxaan ka dhigay mid ka mid ah Graphite. Laakiin si kastaba ha noqotee, Graphite (iyo wixii kale oo ku habboon) ayaa sida ugu fiican ula shaqeeya LTO. Sidoo kale, si ka duwan LTO, Graphite iyo OpenMP waxay leeyihiin dhibaato. Dhammaan barnaamijyadu kama faa'iideystaan, kuwa aan ka faa'iideysanna, waxqabadka ayaa hoos u dhacaya, marka xaaladdan waxaa ka wanaagsan in loo isticmaalo oo keliya xirmooyin kooban.