[elektro] C optimalizálás probléma
hg12345
hg12345 at freemail.hu
Fri Feb 10 10:10:58 CET 2012
Az IT egy 8 alap állapotú állapotgép, nem helyettesíthető konstanssal egyik része se, mert akkor nem ugyan az a kód, igy a hiba se jön elő, valószínüleg.
A számlalálót egy másik számlálóval ellenörizzem?! A program a müködtető számlálót ellenörzi, hibás számlálás esetén a program tartalmmazza a hiba jelzést és a hibás értéket eldobja, ilyen jellegű hiba nem léphet fel, ha csak nem kódoltam rosszul.
Valami 64-32-16 bites számkonverzió hibára gyanakodok. A O0 esetén korrekt módon tartalmazza az elöjel vagy nulla felbővítést a kód, de optimalizáció esetén már "okos" program és ezeket amikor számára nem tünik fontosnak elhagyja, elképzelhető késöbb használva ezt az értéket megszükséges lehet.....
Köszi az ötleted, a számlálót megpróbálom....
"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