Gcc kalandok

Nem is tudom hany eve hasznalok gentoo linuxot mint fo operacios rendszert. Bar mostanaban kevesbe vagyok vele megelegedve (errol kulon topic lehetne), de mindig remekul szolgalt.

Nyar elejen ugy tortent hogy az elozo laptopom tonkrement, es mivel munkaeszkoz, surgosen szuksegem lett egy ujra.
Azert a dontest nem kapkodtam el, alaposan korbeneztem, es mielott egy hp mellett lerakhattam volna a voksom, kijott az ominozus Lenovo 3000 n200 akcio. Szerintem mindenki latta a plakatokat. Megvettem, es nagyon jo dontesnek bizonyult eddig (kopp kopp kopp), minden poccre megy vele linux alol.

Az elso bootnal mar a gentoo mini porgott fel, es szaladt fel az operaciosrendszer. Mar joval elotte utanaolvastam, hogy a gentoo wiki szerint a gep prescott march-ra tamaszkodik (

Intel(R) Pentium(R) Dual  CPU  T2370  @ 1.73GHz

).

Ezzel meg is voltam, ment priman. Azonban elojott a kiserletezo kedvem es felraktam a 4.2es gcc portageben levo valtozatat (nyelvi kulonbseg nincs a 4.1hez kepest, ha nem jon be 1 pillanat alatt vissza lehet valtani). Ennek van 1 uj opcioja:

-march=native

. Ezt a

-v

kapcsoloval kombinalva meg is mondja mire fog forditani.
Csodalkozva lattam hogy

-march=nocona -mtune=generic

-re optimalizalna.

A tortenet meg nem ert veget, a 4.3as gcc

-march=core2 -mcx16 -msahf --param l1-cache-size=32 --param l1-cache-line-size=64 -mtune=core2

parameterekkel fordit. Leforditottam mindent (nehany csomag nem fordul, a 4.2es es 4.3as kozott van nyelvi kulonbseg.), es priman mukodik.

Tanulsag: Ha optimalizalt kodot akarsz mindig nezd meg a nativ marchot.

Hozzászólások

Nekem ugyanilyen van, csak T7100el es dupla aron meg fel evvel ezelottrol :D

En ketlem h a -march=native jobb lenne, mint a -march=core2 (gcc 4.3-tol van). Persze emiatt nemfogom emerge -e worldozni :)

Miert nem amd64 amugy?

Ui.: egyebkent nekunk ketto ilyen van ez egyik olyan mint a tied cask 2390-es proci.