-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!news.internetia.pl!not-for-mail
From: Sylwester Łazar <i...@a...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: PIC vs AVR
Date: Mon, 7 Apr 2014 23:35:20 +0200
Organization: Netia S.A.
Lines: 42
Message-ID: <lhv6h3$5kv$1@mx1.internetia.pl>
References: <533ddbbb$0$2158$65785112@news.neostrada.pl> <lhpavu$914$1@dont-email.me>
<lhpeqj$ct4$1@speranza.aioe.org> <lhpgfo$kjn$1@dont-email.me>
<lhpluc$v7a$1@speranza.aioe.org> <lhpr39$4rf$1@dont-email.me>
<lhq0sf$7gn$1@speranza.aioe.org> <lhrd9u$agv$1@dont-email.me>
<lhrhae$j9a$1@speranza.aioe.org> <lhrk97$6kg$1@mx1.internetia.pl>
<lhs0th$qtp$1@speranza.aioe.org> <lhs583$vhh$1@mx1.internetia.pl>
<lhs5nm$1fo$1@mx1.internetia.pl> <lhubnd$amu$1@mx1.internetia.pl>
<lhueie$klk$1@mx1.internetia.pl> <lhut4e$4dn$1@mx1.internetia.pl>
<lhuvs6$f3a$1@mx1.internetia.pl> <lhv567$142$1@mx1.internetia.pl>
NNTP-Posting-Host: 77-253-141-36.adsl.inetia.pl
Mime-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
X-Trace: mx1.internetia.pl 1396907363 5791 77.253.141.36 (7 Apr 2014 21:49:23 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Mon, 7 Apr 2014 21:49:23 +0000 (UTC)
X-Notice1: This post has been postprocessed on the news.internetia.pl server.
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200
X-Tech-Contact: u...@i...pl
X-Newsreader: Microsoft Outlook Express 5.00.2615.200
X-Priority: 3
X-Server-Info: http://www.internetia.pl/
X-MSMail-Priority: Normal
X-Notice2: Subject line has been filtered and any Odp: strings removed.
Xref: news-archive.icm.edu.pl pl.misc.elektronika:662654
[ ukryj nagłówki ]> Jakbyś nie kombinował z tego przykładu z AVR nie wykażesz, że po
> kompilacji kod jest wielokrotnie mniej wydajny. Ani w ilości instrukcji
> ani w czasie wykonywania.
Po analizie głównej pętli sortującej widać, że:
stosunek czasu wykonywania kodu w C do czasu wykonywania kodu w ASM
będzie ok. 3x większy.
W pierwszym poście zrobiłem błąd.
Podałem:
"2) Testów czasowych _nie robiłem_, ale główna pętla przepisywania rekordów
ma w asm: 20 instrukcji,
a w C po przekompilowaniu: 121 instrukcji.
Wygląda na to, że w C program działa jakieś 6x wolniej."
Przeprosiłem za to i skorygowałem.
Chodziło o 121 bajtów,
czyli instrukcji tam jest ok. 60.
Czyli już masz Tc/Tasm = ~3x
Tc/Tasm = 1,6 jest liczbą nierealną.
Z moich doświadczeń wynika, że:
czasowo ten stosunek wychodzi jeszcze gorzej.
Ale to, aby było solidnie, należałoby zmierzyć dodając timer.
i dlatego analiza czasowa NIE BYŁA PRZEPROWADZANA.
Zobacz sobie na metodę qsort().
Tam używa się rekurencji.
Czyli jeżeli kompilator, (użyję Twojego języka i mojego)
jest nieoptymalny/spartolił sprawę w głównej pętli,
to rekurencji podlega także wykładniczo czas realizacji całości.
I właśnie rekurencyjny qsort() masz zaimplementowany w bibliotece C30
Microchipa w standardzie.
Może znajdzie się ktoś, kto dokona ANALIZY czasowej, bo ja niestety nie mam
czasu,
a tylko ochotę :-)
A potem powiesz, że zrobiłem to, aby się pochwalić.
S.
Następne wpisy z tego wątku
- 08.04.14 00:06 Mario
- 08.04.14 00:12 Michał Lankosz
- 08.04.14 00:28 Pszemol
- 08.04.14 00:58 Sylwester Łazar
- 08.04.14 01:02 Sylwester Łazar
- 08.04.14 02:12 Pszemol
- 08.04.14 02:18 Pszemol
- 08.04.14 08:59 Dariusz Dorochowicz
- 08.04.14 14:01 Mario
- 08.04.14 14:19 Pszemol
- 08.04.14 19:29 Michał Baszyński
- 08.04.14 19:44 Marek
- 08.04.14 21:15 Marek Borowski
- 08.04.14 21:15 Marek Borowski
- 08.04.14 22:41 jacek pozniak
Najnowsze wątki z tej grupy
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
- AMS spalony szybkim zasilaczem USB
- stalowe bezpieczniki
Najnowsze wątki
- 2025-02-12 Warszawa => Expert Recruiter 360 <=
- 2025-02-12 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-02-12 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-12 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-12 Kraków => PHP Full Stack Developer <=
- 2025-02-12 Karta dźwiękowa stereo
- 2025-02-12 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-12 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-02-12 Łódź => NodeJS Developer <=
- 2025-02-12 Błonie => Sales Specialist <=
- 2025-02-12 Dziwne zachowanie magistrali adresowej w 8085
- 2025-02-11 Mini pecet
- 2025-02-10 Spalił się spaliniak
- 2025-02-10 zarowka wifi - z sensowna apka lub lepiej albo lokalnie lub przez web. I zeby harmonogram miala
- 2025-02-10 Chrzanów => Programista NodeJS <=