[elektro] C optimalizálás probléma
Elight
elight at gmail.hu
Fri Feb 10 09:42:33 CET 2012
Ha van szabad portbitet ,
első fokon az idők ellenőrzéséhez
segíteni szokott az amit a Balázs említ..
Kell egy szkóp és egy szabad kimenet ideiglenesen.
Tehát az INT rutin elején bebillneted a bitet ,
és később meg kibillentd..
Ha a kibillentést tologatod a rutinban ,
megállapitható mi rabol időt,
vagy mely részeknek változó hosszú
(esetleg random) a lefutása.
Megméregeted mind a két esetben..
Az interrupt saját magával is karambolozhat néha,
ugy hogy nemnagyon hagy időt a főprogramnak
rendesen futni.
Üdv István
2012.02.10. 09:21:30 dátumon Balázs Bámer <bamerbalazs at gmail.com> írta:
>> Egy elég összetett IT kezelő ~300 soros program (más program nem
>> szakithat bele, ez garantált) -O0 optimalizáió nélkül jól müködik, de
>> -O3 már aperiodikus stochasztikus hibákat
>
> Kell egyáltalán az az O3? Ha ennyire kritikus, nem lehetne assemblyt
> betéttel megoldani pár kényesebb rutint?
>
>> Milyen technikák léteznek ilyen hiba megkeresésére?
>
> Nem lehet az IT-ből egyes részeket kihagyni, és megnézni, mikor lép
> föl a hiba? Pl. valami számítást elhagysz és állandóval helyettesíted
> az eredményt.
>
> Esetleg valami jó felbontású számlálóval nézed, mennyi ideig fut az IT
> egyes esetekben, így különböző optimalizálási fokokon vagy különböző
> részei nélkül.
>
> Még az is elképzelhető, hogy O3-mal hibás kódot generál, míg a többivel
> jót.
>
> szia: Balázs
>
> -----------------------------------------
> elektro[-flame|-etc]
--
More information about the Elektro
mailing list