-
Data: 2009-09-03 14:56:14
Temat: Re: jak optymalizować ze względu na znany warunek w wielokrotnie powtarzanym bloku? [2]
Od: gupi man'a'go <2...@i...sk> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]"Daniel Janus" zaprogramował/a:
>> przed rozpoczęciem pętli, które nie są upraszczalne, znam wartość
>> "condition", lecz wartość ta może ulegać zmianie podczas wykonywania
>> innych części programu. tutaj program musiałby w każdym wykonaniu się
>> pętli sprawdzać wartość "condition". czy jedynym rozwiązaniem jest
>> duplikacja z i bez wołania "proc_2"?
> Nie napisałeś, o jaki język chodzi; ale zakładam, że C albo C++.
> Porządny kompilator powinien być w stanie wyoptymalizować wersję ze
> sprawdzaniem warunku w środku do jednego z tych dwóch wariantów, które
> podałeś; na przykład GCC 4.3.3 u mnie to robi uruchomiony z opcją -O3
> (ale już nie -O2).
>
> The First Rule of Program Optimization: Don't do it. The Second Rule
> of Program Optimization (for experts only!):
> Don't do it yet.
>
> -- Michael A. Jackson
trochę żartem ;-) :
jeśli ten kompilator byłby ,porządny', to nie robiłby nic za plecami
programisty. :-)
tak, rzeczywiście język "C" --jak łatwo się domyślić. ale istotne
są raczej konstrukcje składniowe, które umożliwiają wyjście z takiego
problemu zagłębionego wykonywania. język "C" nie jest językiem funkcy-
jnym, zawiera instrukcje nieprzewidywalne, więc po co kompilator ma się
męczyć, gdy nie wiadomo co się otrzyma.
--
/ qo |) :@=N%_g=v=a=g_eD_e=c()=d=8! =%!gN@8'Re. w8in/ad
\ _x/ , ;h-%-a'hA'H4,X0'Xo~xo~xO,R`-%EXp01ITed: *-7/+eh
/ | ng `-%__%--'__%--'__%--~__%--^%B`/$qV3r[o; &GooMee
L_._o_O_*_^_"_'_`_ -> http://thereis.notlong.com <- `L"EnOF"
Następne wpisy z tego wątku
- 03.09.09 20:33 Mariusz Marsza�kowski
- 07.09.09 09:13 Filip Sielimowicz
- 07.09.09 19:46 gupi man'a'go
- 08.09.09 08:00 Filip Sielimowicz
- 08.09.09 09:02 Stachu 'Dozzie' K.
- 08.09.09 14:26 gupi man'a'go
- 08.09.09 14:53 gupi man'a'go
- 09.09.09 09:21 Filip Sielimowicz
Najnowsze wątki z tej grupy
- 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
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-03-05 Zielona GĂłra => Konsultant wdroĹźeniowy Comarch XL/Optima (KsiÄgowoĹ
- 2025-03-05 Białystok => Spedytor Międzynarodowy (handel ładunkami/prowadzenie
- 2025-03-05 Warszawa => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-03-05 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-03-05 Zielona Góra => Senior Field Sales (system ERP) <=
- 2025-03-05 Warszawa => Data Engineer (Tech Lead) <=
- 2025-03-05 Kraków => Business Development Manager - Network and Network Security
- 2025-03-05 Zaniepokojeni mieszkańcy
- 2025-03-05 Ile pieniędzy ma bank?
- 2025-03-05 Ostrów Świętokrzy => Node.js / Fullstack Developer <=
- 2025-03-05 Białystok => Architekt rozwiązań (doświadczenie w obszarze Java, A
- 2025-03-05 Warszawa => Frontend Developer (Angular13+) <=
- 2025-03-05 Warszawa => Frontend Developer (obszar Angular13+) <=
- 2025-03-05 Chiny-Kraków => Backend Developer (Node + Java) <=
- 2025-03-05 Warszawa => JavaScript / Node / Fullstack Developer <=