-
Data: 2009-06-07 17:35:16
Temat: Re: jak napisać szybki program
Od: Mirosław Habarta <M...@p...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Remek pisze:
> Użytkownik "gosmo" napisał:
>
>> to się okazało, że mój kod był wolniejszy niż ten napisany w języku
>> wysokiego poziomu.
>
> Co w tym dziwnego, skoro sam piszesz, że nie masz pojęcia o assemblerze?
> Dziwne jest raczej to, że w ogóle działało. Natomiast twierdzenie, że jakiś
> optymalizator zrobi coś lepiej niż wprawny programista w asm jest delikatnie
> mówiąc bajaniem laika. Zresztą co tu miałby do roboty optymalizator.
> Optymalizować trzeba sam algorytm, a nie program.
>
> Remek
>
Wydaje mi się, że aby napisać szybki program w asm nie wystarczy dobrze znać asm-a.
Trzeba przede wszystkim znać procesor na który się pisze. A obecne procesory są
"dość" skomplikowane. To nie jest chyba tak, że mamy pamięć i kilka rejestrów, choć
z pewnego punktu widzenia tak to może wyglądać. Nie wszystkie instrukcje wykonują się
równie szybko, a część operacji można chyba zrównoleglać (mówię o pracy na tym samym
rdzeniu). Kideyś miałem taką książeczkę "procesry x486" czy jakoś tak. Tam były
opisane wszystkie instrukcje i ile taktów procesora potrzeba na ich wykonanie.
To jest chyba kluczowa sprawa. Ale pewnie dla każdej następnej generacji procesorów
te dane się zmieniają. W Pentium4 były już jakieś potoki wykonawcze
(hyper-threading),
i być może niektóre operacje można było zrównoleglać, ale pod pewnymi warunkami,
itp..
A... bym zapomniał - jeszcze cache - ile to tam tych poziomów było ?
Zadanie napisania optymalnego programu w asm dla konkretnego procesora to chyba
jest pewien problem optymalizacyjny, z ogromną ilością zmiennych. Szansa, że człowiek
potrafi to lepiej rozwiązać, niż wyspecjalizowany program jest chyba niewielka.
Oczywiście, to są moje gdybania, jeśli czyta to ktoś znający się na rzeczy, to niech
się do tego odniesie.
M.H.
Najnowsze wątki z tej grupy
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
Najnowsze wątki
- 2025-03-20 Grubość socketa AM4+procesor
- 2025-03-20 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-03-20 Warszawa => Senior Programmer C <=
- 2025-03-20 Re: Dlaczego tak odstają od Tesli?
- 2025-03-20 Greenpeace została zobowiązana do zapłaty niemal 667 mln dolarów [USA,wyrok sądu]
- 2025-03-20 Re: Dlaczego tak odstają od Tesli?
- 2025-03-19 Brak ograniczeń dla chińskiego kapitału - wam nie do rządu, tylko na zmywak do chińskiej knajpy!!!
- 2025-03-19 Wietnam wykłada 500M$ i chce zbudować fabrykę za 50G$
- 2025-03-19 szal-Unia == federacja policyjna
- 2025-03-19 Polsza == państwo policyjne
- 2025-03-19 Grzegorz Płaczek o programie szczepień dzieci. ,,Stworzono eldorado dla firm farmaceutycznych"
- 2025-03-19 Wietnam wykłada 500M$ i chce zbudować fabrykę za 50G$
- 2025-03-19 Gemini
- 2025-03-19 Mokry sen Zenka :)
- 2025-03-19 Re: Dlaczego tak odstają od Tesli?