Zpět na seznam článků     Zpět na článek

Komentáře ke článku

 
 
 BBCode
DedoMraz | E-mail | ICQ 2111262812.12.2006 0:25
heh tento clanok je dost podobny mojej odpovedi na vypoctovke :)
F1.12.2006 23:01
2guma: Ano, to je pravda, ale to je vysokourovnova optimalizace, kterou muzes udelat i v Cecku. Pokud nekdo spatne navrhne program, to kompilator skutecne nezachrani...
F1.12.2006 22:58
No popravde - nevim jestli existuje clovek co dokaze optimalizovat lepe nez kompilator. Kus prace za tebe odvede pocitac - je to stejne jako kdyz pocitas odmocninu ze dvou - na papire to jde taky, ale pocitac to zvladne lepe a rychleji. Kazdopadne si myslim ze asm je nutnost pro kazdeho, protoze IMHO kazdy programator by mel umet pracovat s debugerem a v dobe uzavrenych zdrojaku umet reverzovat, napsat jednoduchou rutinu, pripadne nove instrukce ktere jeste kompilator nepodporuje. Ale psat program cely v asm je podle me zbytecne. Dost reci - muzes zkusit maly experiment - napis neco v asm, to same v c a zmer cas pomoci RDTSC (zabran task switch jinak spoustu tiku sezere OS a dalsi procesy). A ne ze budes v asm podvadet pomoci SIMD :)
.cCuMiNn. | E-mail | Website | PGP1.12.2006 19:10
Myslím, že jsem F pochopil. Myslel to tak, že je na světě jen málo lidí, kteří by ovládali vše z tak rozsáhlé oblasti do takových detailů, aby byli lepší než ten kompilátor. Na druhou stranu, pokud se takový odborník najde, pak píše v assembleru lépe než kompilátor. Ve skratce: pro laiky C a pro odborníky assembler - s čímž souhlasím.
F: myslel jsi to tak?

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
guma1.12.2006 18:34
Z principu není možné, aby stroj optimalizoval lépe než člověk. Program je jen tak chytrý, kolik své chytrosti do něj vložil jeho autor, to platí i pro kompilátory. Kompilátory jsou psané tak, aby generovaly univerzálně použitelné rutiny, zatímco člověk může využívat specifických možností konkrétní implementace - například umisťování tabulek nebo podprogramů na zaokrouhlené adresy, což nejde dělat univerzálně, ale ve speciálních případech lze takhle za cenu mrhání pamětí urychlit vykonávání programu.
F29.11.2006 18:05
2.cCuMiNn.: Dik za odpoved. U jednocipu teda asm zni rozumne, u x86 vetsi rychlost Cecka ale neni "blbost" ani "povera". Dnesni kompilatory jsou opravdu chytre - o tom me poprve presvedcili na predmetu real-time operacni systemy (kde se mimochodem vse pise v Cecku, nejen kvuli prenositelnosti). Staci si jen precist dokumentaci - od zarovnavani pro optimalni vyuziti cache, pres custom call conventions az prerovnavani instrukci. Samozrejme, pokud vis vsechny triky co vedeli autori kompileru, napises v asm to samy, s vetsim usilim a jen tehdy pokud znas presne cilovou architekturu. A hlavne - asi ti budou chybet informace ktere maji autori kompilatoru spolupracujici s vyrobci chipu. viz treba [link]
BTW: ja obcas pisu v FASM, jinak C a inline asm.
-=Punka][Tux=- | E-mail29.11.2006 17:53
Fakt skvely clanek, hned si neco takoveho poridim a zaexperimentuju.

----------
May the source be with you...
guma29.11.2006 16:01
On ten nesmysl s tím, že kompilátor vyššího jazyka umí optimalizovat kód lépe než zkušený kodér je pověra, kterou začal na Hysterce šířit ten debil Neologic.
Důrazně vás varuju - nevěřte tomu, tolik chytré ty dnešní mašiny rozhodně nejsou.
Dark Craft | PGP29.11.2006 8:34
Pekny clanek, skoda ze sem nemohl byt i u prednasky
s28.11.2006 23:05
najviac sa mi pacila veta "Pokud assembleru rozumíš" :)

Stránky: 1 2 3