WinAvr (avr-gcc) kontra Bacsom-AVR



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: Maksymilian Dutka <maxdutka_at_nospam_usunonet.pl>
Subject: WinAvr (avr-gcc) kontra Bacsom-AVR
Date: Sat, 25 Sep 2004 23:40:00 +0200


Program testowy:

--- Bascom ---

Dim I As Byte
For I = 1 To 20
Portb = 12 * I
Next

--- avr-gcc ---


char I;
for(I=1;I<=20;I++)
{
PORTB=12*I;
}



Wyniki:
WinAVR | Bascom
Ilosc cykli: 178 | 2700
Rozmiar prog.: 316B | 418B

I co Wy na to?

Ps. Prosił bym o podanie wyników z innych kompilatorów.


========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "WJ" <wj78[nospam]_at_nospam_wp.pl>
Subject: Re: WinAvr (avr-gcc) kontra Bacsom-AVR
Date: Sun, 26 Sep 2004 00:33:19 +0200


Wyniki:
WinAVR | Bascom
Ilosc cykli: 178 | 2700
Rozmiar prog.: 316B | 418B

I co Wy na to?

No, C jest bardziej wydajne od Basic'a. Spróbuj to samo napisać w
assemblerze, a zobaczysz, że wyniki będą jeszcze lepsze ;) Pozdrawiam

--
WJ



========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: =?ISO-8859-2?Q?=22Przemcio_=AF=2E=22?= <przemcio_at_nospam_WYTNIJTOonet.pl>
Subject: Re: WinAvr (avr-gcc) kontra Bacsom-AVR
Date: Sun, 26 Sep 2004 00:54:10 +0200


WJ napisał(a):

<>Wyniki:
WinAVR | Bascom
Ilosc cykli: 178 | 2700
Rozmiar prog.: 316B | 418B

I co Wy na to?
No, C jest bardziej wydajne od Basic'a. Spróbuj to samo napisać w
assemblerze, a zobaczysz, że wyniki będą jeszcze lepsze ;) Pozdrawiam

stosujac narzedzia komercyjne pewnie jeszcze troche zaoszczedzisz miejsca...
ale to miejsce moze wtedy kosztowac kilka k$ :)))
avr-gcc dla zwyklego ludka jest chyba najlepsze... no i asm:)

--
Pozdrawiam - Przemcio Ż.
http://www.svpl.info - Savoir-Vivre w sieci...
http://www.nasza.behende.pl - strona Nasza:)))
- MY - FORUM - GALERIA - TY -
gg: 1156769, tlen: belmotybe

========
Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Piotr Wyderski" <wyderskiREMOVE_at_nospam_ii.uni.wroc.pl>
Subject: Re: WinAvr (avr-gcc) kontra Bacsom-AVR
Date: Sun, 26 Sep 2004 12:06:39 +0200



WJ wrote:

No, C jest bardziej wydajne od Basic'a.

Pod jakim wzgledem? Kod w C jest najczesciej wydajniejszy
(choc to zwykle jest zasluga dobrego optymalizatora, a nie
samego jezyka). Natomiast w jezykach wyzszego poziomu
niz asemblery strukturalne (jak ktos ladnie nazwal C i C++ :-))
wydajniejszy jest programista.

Spróbuj to samo napisać w assemblerze

Z dobrym kompilatorem nie wygrasz, jesli nie znasz architektury
wewnetrznej procesora (zaleznosci miedzy poszczegolnymi
jednostkami funkcjonalnymi oraz skladowymi potoku itd.) na wylot.

Pozdrawiam
Piotr Wyderski


========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Thomek" <lipin_at_nospam_usunto.poczta.fm>
Subject: Re: WinAvr (avr-gcc) kontra Bacsom-AVR
Date: Sun, 26 Sep 2004 13:13:16 +0200


Pod jakim wzgledem? Kod w C jest najczesciej wydajniejszy
(choc to zwykle jest zasluga dobrego optymalizatora, a nie
samego jezyka).

Hmmm zastanawiajace chyba dla prockow AVR nie ma zadnych problemow aby pobic
w wydajnosci jakikolwiek kompilator jezyka C. To nie jest procesor Pentium.


PS. Nie znam AVR ale nie wydaje mi sie zeby mial potoki, pamiec chache i tym
podobne bajery.

Pozdrawiam
Thomek



========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: J.F. <jfox_nospam_at_nospam_poczta.onet.pl>
Subject: Re: WinAvr (avr-gcc) kontra Bacsom-AVR
Date: Sun, 26 Sep 2004 15:21:18 +0200


On Sun, 26 Sep 2004 13:13:16 +0200, Thomek wrote:
Pod jakim wzgledem? Kod w C jest najczesciej wydajniejszy
(choc to zwykle jest zasluga dobrego optymalizatora, a nie
samego jezyka).

Hmmm zastanawiajace chyba dla prockow AVR nie ma zadnych problemow aby pobic
w wydajnosci jakikolwiek kompilator jezyka C. To nie jest procesor Pentium.
PS. Nie znam AVR ale nie wydaje mi sie zeby mial potoki, pamiec chache i tym
podobne bajery.

Dokladnie.
W dodatku prosta i 8-bit architektura utrudnia optymalizacje
kompilatorom..

J.


========
Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: J.F. <jfox_nospam_at_nospam_poczta.onet.pl>
Subject: Re: WinAvr (avr-gcc) kontra Bacsom-AVR
Date: Sun, 26 Sep 2004 14:02:31 +0200


On Sun, 26 Sep 2004 12:06:39 +0200, Piotr Wyderski wrote:
WJ wrote:
No, C jest bardziej wydajne od Basic'a.

Pod jakim wzgledem? Kod w C jest najczesciej wydajniejszy
(choc to zwykle jest zasluga dobrego optymalizatora, a nie samego jezyka).

Dokladnie - nawet bym powiedzial ze C optymalizacje utrudnia ..

Natomiast w jezykach wyzszego poziomu
niz asemblery strukturalne (jak ktos ladnie nazwal C i C++ :-))
wydajniejszy jest programista.

Eee - polemizowalbym. Co tam moze programista poprawic ?
Jakosc kompilatora sie liczy.


Spróbuj to samo napisać w assemblerze
Z dobrym kompilatorem nie wygrasz, jesli nie znasz architektury
wewnetrznej procesora (zaleznosci miedzy poszczegolnymi
jednostkami funkcjonalnymi oraz skladowymi potoku itd.) na wylot.

Ale to jest prosty i w dodatku 8-bit. Wygrasz o pare dlugosci.

J.


========
Path: news-archive.icm.edu.pl!news2.icm.edu.pl!wsisiz.edu.pl!newsfeed.atman.pl!news.task.gda.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Piotr Wyderski" <wyderskiREMOVE_at_nospam_ii.uni.wroc.pl>
Subject: Re: WinAvr (avr-gcc) kontra Bacsom-AVR
Date: Sun, 26 Sep 2004 14:40:18 +0200


J.F. wrote:

Dokladnie - nawet bym powiedzial ze C optymalizacje utrudnia ..

To prawda, chocby aliasing blokuje lub bardzo utrudnia wiele
optymalizacji. Do tego dochodzi powstawanie tzw. nieredukowalnych
grafow przeplywu, gdy wykorzystuje sie instrukcje goto -- a takie
grafy wymagaja znacznie bardziej wyrafinowanych analizatorow,
niz programy tylko z petlami for/while i ifami.

Eee - polemizowalbym. Co tam moze programista poprawic ?

Wydajnosc programisty, a nie kodu. :-) Wiecej kodu ze srednio
mniejsza liczba bledow mozna napisac w tym samym czasie, innymi
slowy. Wez skrajny przyklad Prologu: interpreter ma dokonac
unifikacji syntaktycznej podanych wyrazen; jak to sie w srodku
dzieje, to juz nikogo nie obchodzi.

Jakosc kompilatora sie liczy.

To sie liczy zawsze, niezaleznie od jezyka. :-)

Ale to jest prosty i w dodatku 8-bit.

Fakt, na AVR-ku finezyjnych optymalizacji nie da sie robic, nawet
dobry kompilator-projekt studencki bedzie generowal zadowalajacy
kod.

Wygrasz o pare dlugosci.

Nie przesadzajmy, na tak prostym procesorze kompilator nie ma
zbyt wielu miejsc do popsucia kodu. Nawet byle jaki kod bedzie
dzialal niezle. Czlowiek moze duzo wygrac na wlasciwym wyborze
organizacji danych w pamieci, ale to nie znaczy, ze kompilatory
tego nie potrafia -- po prostu wiele z nich ma swoje korzenie
na duzych maszynach (m.in. GCC), a tam sie az tak wielkiej wagi
do tego nie przywiazuje, wiec i same kompilatory nie maja
zaimplementowanych silnych algortymow do planowania tego.
A ze np. AvrGCC rozni sie od GCC praktycznie tylko generatorem
kodu wynikowego, to trudno sie spodziewac rewelacji w tym
wzgledzie.

Pozdrawiam
Piotr Wyderski


========
Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news-fra1.dfn.de!news0.de.colt.net!news.iphh.net!iphh.net!news.belwue.de!newsfeed01.sul.t-online.de!t-online.de!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!hs001.slackware.pl