-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!goblin1!goblin.stu.neva.ru!newsreader4.netcologne.de!news.netcologne.d
e!nx02.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-01.n
ews.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-fo
r-mail
Date: Sun, 06 Jul 2014 18:25:56 +0200
From: "Bogdan (bogdro)" <b...@p...gazeta.pl>
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.6.0
MIME-Version: 1.0
Newsgroups: pl.comp.programming
Subject: Re: era asemblera
References: <9...@g...com>
In-Reply-To: <9...@g...com>
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
Lines: 63
Message-ID: <53b97895$0$2379$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 37-128-50-64.adsl.inetia.pl
X-Trace: 1404663959 unt-rea-a-01.news.neostrada.pl 2379 37.128.50.64:10768
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.comp.programming:206219
[ ukryj nagłówki ]W dniu 05.07.2014 13:08, firr pisze:
> z tego co obserwuje jesli ktos chce pisac
> zoptymalizowane programy (np w c) to bez
> asemblera nie mozna sie obejsc
> (Pytanie czy to twierdzenie jest do końca scisłe,
> ale chyba jest) - w obliczu sse (moze ze skalarnym asmem byloby nieco inaczje) i
tego ze obecne optymalizatory
> sa pod tym katem beznadziejne (znowu, moze gdyby
> jezyk c byl rozszerzony sytuacje uleglaby pewnej
> zmianie, nie jestem do konca pewien) sprawa ma sie
> po prostu tak ze trzeba pisac w asmie i "nie ma bata"
> 9przez asma moge tez rozumiec intrinsiki ale podobno nawet to wspolczesne
kompilatory robia dosyc kiepsko)
>
> slowem kompilatory podobno (jak to powtarzaja co poniektorzy) optymalizuja dobrze
kod tylko ze wychodzi na to ze moze caly za wyjatkiem hotspotow ;/ [uzywam tego slowa
bo jakos poki co nie znam lepszego] bo jak
> przychodzi co do czego okazuje sie ze takiego hotspota trzeba przepisac w asmie i
nawet nie ma tu mowy o zadnej konkurencji, sciganiu sie z kompilatorem - kompilator
po prostu lezy - takie sa moje
> doswiadczenia [i wbrew temu co mowia liczni internetowi zamulacze przepisywanie
hotspotow w asmie moze dzis bardziej oplacalne (jesli komus zalezy na szybkosci kodu)
niz kiedys]
>
> (sa to optymistyczne 'wiesci' (jesli to mozna nazwac wiesciami))
Różnie z tym bywa.
Np. taki GCC ma opcje tuningujące kod wynikowy już pod najnowsze lub
prawie najnowsze procesory i potrafi korzystać z SSE czy innych
technologii, które są obce tym kompilatorom C, które zatrzymały się na
386 lub 686 (w sensie operacji skalarnych, bez MMX).
Przy często używanych operacjach, które kompilatory już umieją
optymalizować, może być ciężko je prześcignąć.
Ale kompilatory mogą sobie gorzej radzić w "intensywnych
obliczeniowo" fragmentach kodu, a poza tym np. biblioteki matematyczne
mogą nie być "gotowe" na optymalizacje czy używanie SSE.
Kompilatory mogą sobie też gorzej radzić z optymalizacjami na
poziomie całego programu (choć GCC też ma jakieś opcje z tym
związane), typu "przez cały żywot programu rejestr X będzie trzymał
moją stałą Y, aby był do niej szybki dostęp").
Czy da się prześcignąć kompilator? Sądzę, że tak. Może nie zawsze i
wszędzie, ale w pewnych sytuacjach według mnie jest to możliwe. W
końcu kompilator ma kompilować różne programy, a nie tylko ten nasz
jedyny, a zestaw optymalizacji dla jednej sytuacji może nie podziałać
dobrze w innej.
To wszystko też z raczej zasłyszanych rzeczy. Sam mam niewielkie
doświadczenie w porównywaniu programów C z asmem, ale pamiętam
mgliście jakąś historię, gdzie były pisane jakieś programy numeryczne,
chyba po milion iteracji i programy w C działały w "czasach
obiadowych" (tzn. można było sobie uruchomić program, ugotować obiad,
zjeść go, wrócić i może był wynik :) ), a podobne programy w
asemblerze kończyły pracę w czasie rzędu pojedynczych minut.
W skrócie: to, co da się wycisnąć, zależy od:
- kompilatora,
- człowieka,
- konkretnego kawałka kodu.
Jeśli czujesz, że Twój kod działa nie dość szybko w punkcie, w którym
nie da się go już bardziej zoptymalizować w języku wyższego poziomu,
spróbuj ten kawałek przepisać na asma, resztę pozostaw kompilatorowi
do optymalizacji.
No i kolejność operacji:
- implementujemy działający kod,
- wybieramy lepsze algorytmy (np. sortowania),
- optymalizujemy.
--
Pozdrawiam/Regards - Bogdan (GNU/Linux & FreeDOS)
Kurs asemblera x86 (DOS, GNU/Linux): http://bogdro.ciki.me
Grupy dyskusyjne o asm: pl.comp.lang.asm alt.pl.asm alt.pl.asm.win32
www.Xiph.org www.TorProject.org Soft(EN): http://bogdro.ciki.me/soft
Najnowsze wątki z tej grupy
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
Najnowsze wątki
- 2025-12-27 pompa CO
- 2025-12-27 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-12-27 Ewakuacja ludności
- 2025-12-26 Gdańsk => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-12-26 Kraków => Konsultant Microsoft Dynamics 365 Finance <=
- 2025-12-26 Kraków => Microsoft Dynamics 365 Finance Consultant <=
- 2025-12-26 wymieniłem termostat
- 2025-12-26 Warszawa => Senior Backend Java Developer <=
- 2025-12-25 Finlandia przywraca swastykę
- 2025-12-25 Skuteczność wymiaru sprawiedliwości
- 2025-12-24 Felgi
- 2025-12-24 2,5 x więcej niż Li-Ion
- 2025-12-24 No i kolejny ograniczony
- 2025-12-24 Warszawa => Młodszy Specjalista ds. wsparcia sprzedaży <=
- 2025-12-24 New York Times zagrożeniem bezpieczeństwa narodowego USA - POTUS D. Trump




5 Najlepszych Programów do Księgowości w Chmurze - Ranking i Porównanie [2025]