-
Data: 2012-01-07 23:15:58
Temat: Re: ilupotokowy jest najnowszy procek intela
Od: "Matt P. Dz." <n...@i...local> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 12/31/2011 6:50 AM, M.M. wrote:
> Temat stary jak swiat. Czesto podczas programowania, gdy chce
> sie uzyskac super wydajna implementacje, programista zdaje
> sobie sprawe ze ciag instrukcji w jezyku wysokopoziomowym
> bedzie zbyt trudny dla kompilatora aby wygenerowal z tego
> optymalny kod maszynowy. Co wiecej, kompilator bez informacji o
> statystycznym rozkladzie danych, nie moze wygenerowac optymalnego
> kodu - dla kazego rozkladu inny kod bedzie optymalny. Kwestia jest
> chyba nadal otwarta: czy np. wprowadzic jakas pragme, typu
>
> #pragma a = {0..0=>60%,1..3=>20%,3..inf=>20%}
> instrukcje( a );
>
> Kompilator wiedzac ze a nigdy nie przyjmuje wartosci ujemnych i
> jest az 60% szans na to ze a jest rowne zero, moze wygenerowac
> lepszy kod.
W GCC jest cos w tym stylu, __builtin_expect
http://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.htm
l
Dosc czesto uzywane w kernelu Linuxa, takze przydatne sa (oparte na
powyzszym) makra "likely" i "unlikely":
#define likely(x) __builtin_expect(!!(x), 1)
#define unlikely(x) __builtin_expect((x), 0)
http://kerneltrap.org/node/4705
http://www.ginac.de/pipermail/ginac-devel/2001-Septe
mber/000329.html
Patrz tez:
http://stackoverflow.com/questions/3702903/portable-
branch-prediction-hints
http://stackoverflow.com/questions/1851299/is-it-pos
sible-to-tell-the-branch-predictor-how-likely-it-is-
to-follow-the-branc
Pozdrawiam,
Matt
Następne wpisy z tego wątku
- 08.01.12 00:54 Grzegorz Niemirowski
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?