www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

C kviz
Pojdi na stran Prejšnja  1, 2
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> ARM arhitektura
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
jur
Član
Član



Pridružen-a: Pet 02 Dec 2005 14:45
Prispevkov: 5142
Aktiv.: 21.70
Kraj: [color=zelena]Ljubljana[/color]

PrispevekObjavljeno: Sre Jun 07, 2006 4:09 pm    Naslov sporočila:   Odgovori s citatom

Citiram:
To da množenje 8mih števil porabi več procesorja, kot preverjanje vsakega števila posebej, nisem vedel. Se bo treba malo poglobit v procesorske arhihekture...


Bistvo je v flagih. Pri določenih operacijah sploh ni potrebno preverjati, ali ima spremenljivka vrednost nič, ker se pri procesorju avtomatično postavi zero flag. Primer je pri Delphiju. Pri vključeni optimizaciji, indeks zanke namesto kot je v programu določeno navzgor, začne šteti na dol. Zakaj?

Izvorna koda v pascalu: for i:=0 to 10 (zanka ki šteje od 0 do 10)

Če šteješ na primer od 0 do 10, gre normalno tako:
1. števec = 0
2. loop: povečaj števec za eno
3. a je že deset?
4. če ni, pojdi na loop
5. konec

Optimizirano (štetje nazaj):
1. števec = 10
2. loop: zmanjšaj števec za eno in če ni nič, pojdi na loop //(zero flag se dvigne, če rezultat zmanjšanja nič)
3. konec

Koda je hitrejša (3:5). Stvar je malo približno opisana, ampak tako to gre.
Pri enem izračunu se ne pozna nič. Pri milijonih operacij pa je razlika ogromna.

Včasih je v zanki pomembno, ali štejemo naprej ali nazaj. Ob vklopljeni optimizaciji bo tako stvar izračunana hitreje, rezultati pa bodo napačni. Dobra optimizacija programa je za izvedbo težja, kot zgleda na prvi pogled.

Jur
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> ARM arhitektura Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran Prejšnja  1, 2
Stran 2 od 2

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 495 dni


Powered by phpBB © 2001, 2005 phpBB Group