-
Data: 2018-11-20 10:46:00
Temat: Re: Niezmienniki pętli
Od: fir <p...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu poniedziałek, 19 listopada 2018 23:12:21 UTC+1 użytkownik g...@g...com
napisał:
> Jak będziecie używać mojej funkcji memmove, to może nawet zadziała
> o ćwierć promila szybciej na niektórych procesorach.
takie teksty nie brzmia za madrze (pominawszy fakt ze tego typu spory/dyskusje (tego
okreslonego typu) wogole nie sa za madre) (z trzeciej stony wlaczanie sie w takie
logiczne podejscie
(typu wypowiadanie zdan i rozrtrzasanie co jest rpawda a co nie) jest ok)
ile to jest cwierc promila? 0.025 %,
cos tu nie gra, wygladami na to ze
ktos kto to pisze ma bardzo osobliwe podejscie do optymalizacji i robil to albo jakos
dziwnie albo zupelnie zle
albo wogole
ja optymalizowalem relatywnie sporo i
1)
takie wartosci jak 0.025% nie wchodza
tam wogole w gre bo te czasy wogole nie sa tak stabilne by moc to zauwazyc i zmierzyc
(aq czas czystego memcopy to juz wogole gdy ja to mierzylem niezle oscylowal)
2)
samego memcopy raczej sie nie optymalizuje bo przestrzen by tu poprawic jest mala ale
juz cale okolice bliskie
memcopy - jak najbardziej
3) czynniki jakimi mozesz przyoptymalizowac juz calkiem dobrze ale zwyczajnie
napisany kod w c czy tam c++ moga byc naprawde spore, i wtedy nie wyrazasz tez tego
raczej w procentach tylko w 'x' ile razy, to ilemozesz osiagnac zalezy od natury
zagadnienia i od tego jak wstepnie przyoptymalizowany byl kod oraz od tego jak bardzo
daleko chesz isc w ta optymalizacje
ale moje przykladowe casy jakie ja znam
1) kiepsko napisany kod 60 ms na ramke
2) pobawianie sie z flagami kompilacji
(ale takie ktore polega na tym ze po roznych zmianach patrzysz na wplyw a nie tylko
na pale wlaczysz kilka) oraz wogole
wyodrebnienie petli i przepisanie jaj tak by bylo jasne co tam sie dzieje (jelsi ktos
napisal bez wiekszej uwagi) 30 ms na ramke
(dla mnie to pow punkt startoway bo jzu na starcie zwracam na to uwage)
3) poprzepisywanie, porozwijanie wyrazen, zredukowanie dzielen, poprzepisywanie na
inline (choc to malo pomaga raczej chodzi o to by miec wglad co tam sie dzieje),
ogolne poupraszczanie tak ze kod bardziej jest przyjazny podejsciu optymalizacyjnemu
- 16 ms
4) tabelaryzowanie kawalkow kodu, porozbijanie kodu na specjalne casy pod wzgledem
optymalizacji, dorobienie skomplikowanych algorytmow 'odrzucania roboty', zagladanie
do generowanego asma, ew wwalenie paru intrinsincow sse... przerobienie niektorych
czesci na kod ktory dzial w sposob lekko przyblizony (zlinearyzowany) (strata jakosc
wzgl szybkosci) - 1.6- 1.2 ms
5) zejscie na poziom asma i robienie jakiegos hardkoru w mikrokodzie razem ew jeszcze
z dorobieniem jeszcze wiekszych rewolucji w algorytmach odrzucania - prawdopodobnie
jeszcze mozna przyspieszyc 2 razy (i zejsc ponizej milisekundy ale to juz hardkor i
tego nie robie za duzo roboty i nei znam az takl asma
slowem jak ktos mowi ze optymalizacja to walka o promile to raczej nie wie co mowi,
wg mopich doswiadczen optymalizacja to raczej 'srednio' czynnik 10x 15x jeslis ie
nawet zaczyna z calkiem poprawnego kodu w c
nie widze przypadku w ktorych mowienie o promilach mialoby sens - bo to chyab
musialobybyc w wypadku potwznie przyoptymalizowanego kodu a taki kod ma juz wtedy
procentowo spoore fluktuacje wiec gadanie o promilach nie ma sensu
Następne wpisy z tego wątku
- 20.11.18 10:58 fir
- 20.11.18 12:00 AK
- 20.11.18 14:29 Maciej Sobczak
- 20.11.18 14:38 Maciej Sobczak
- 20.11.18 15:07 Maciej Sobczak
- 20.11.18 17:54 AK
- 20.11.18 21:52 fir
- 20.11.18 22:16 fir
- 20.11.18 22:46 g...@g...com
- 20.11.18 23:26 Queequeg
- 20.11.18 23:27 g...@g...com
- 21.11.18 08:16 Maciej Sobczak
- 21.11.18 11:12 Queequeg
- 21.11.18 11:36 fir
- 21.11.18 15:54 AK
Najnowsze wątki z tej grupy
- 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
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-08-19 zaiks
- 2025-08-19 UWAGA na scam: diperson_com
- 2025-08-19 UWAGA na scam: diperson_com
- 2025-08-15 Co to za dziwne "białe namioty" co stawiają je w różnych dziwnych miejscach?!?
- 2025-08-11 Francuska elektrownia atomowa zamknięta. Powodem "nieprzewidywalny" rój meduz
- 2025-08-14 bateria 6000mAh
- 2025-08-11 ,,dwie za 25" - Gadająca papuga wsypała gang handlarzy narkotyków
- 2025-08-11 Zhakowano eSIMy! Ale (na razie) się nie martw
- 2025-08-18 ZIELONA ENERGIA ZARZYNA NIEMIECKĄ GOSPODARKĘ. GWIAZDOWSKI KOMENTUJE
- 2025-08-18 Estakada w Chorzowie
- 2025-08-15 otwarcie obwodnicy Lęborka
- 2025-08-14 zjebane małe ronda
- 2025-08-14 JAK NIE SPŁONĄĆ W ELEKTRYKU?
- 2025-08-14 Kostomłoty
- 2025-08-12 Ceny badań technicznych w górę i to już od września - nagłe przyspieszenie Ministerstwa!