-
Data: 2013-07-11 18:20:55
Temat: Re: Why mobile web apps are slow
Od: Edek <e...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dnia pamiętnego Wed, 10 Jul 2013 01:00:35 -0700, Maciej Sobczak wyjmując
peta oznajmił:
> Trafiłem na fajny artykuł:
>
> http://sealedabstract.com/rants/why-mobile-web-apps-
are-slow/
Uff. Długawy?
> Dosyś długawy, ale w ramach wakacyjnego rozruszania grupy polecam.
> W szczególności tak gdzieś w połowie strony jest wykres pokazujący jak GC wpływa na
wydajność programu w zależności od pamięci, która jest dostępna w systemie w relacji
do tego, jaka jest faktycznie potrzebna.
>
> W ogóle jest tam trochę mocnych stwierdzeń. Sporo odniesień do wszelakich obecnie
używanych języków programowania. Polecam.
Może zacznę od tego, że nie wiem skąd wiedziałem że JS jest bliższy C++ niż 3-5x.
Gość też cytuje ostateczną lambdę, a tam niedawno był artykuł o dialekcie
JS stworzonym dokładnie w celu ominięcia ciężkich pod względem
wydajności punktów w języku. Co prawda komentarze mówiły o braku
"soundness proof" lub też niemożliwości uzyskania takiego, ale
niech to będzie WorkInProgress.
Natomiast gość cytuje wiele rzeczy i - co się podobuje - chce się trzymać
faktów, ale gdy przychodzi do metody benchmarków mówi "oczywista
oczywistość że liczenie md5 jest lepszym benchmarkiem niż harvest kodu
z tysiąca stron www". Co jest bzdurą, nie pamiętam linka ale benchmark
4 języków Google'a pokazał, jak złudne są syntetyki, trochę kombinatoryki
pomieszanej z rekurencją i nagle Java wychodzi poza obszar, do którego
była stworzona. Dla mnie oczywistą oczywistością jest fakt, że syntetyki
pokazują dobrze warunki brzegowe więc nadają się dla autorów kompilatorów,
ale potem przychodzi zonk prawdziwych aplikacji: w gcc odkryli, że
benchmark mozilli daje lepsze wyniki przy -Os niż -O2, co zdecydowanie
nie było ich intencją. Bo nie testowali dużego kodu tylko używali
syntetycznych benchmarków, tak jakby wszyscy niczym firr pisali
50-linijkowe programy.
Co do samego GC, nic nowego, ja bym powiedział że noGC aktualnie robi mi się
pod domem i niedługo nie będzie można okna otworzyć. Ale i tu gość trochę
nagina rzeczywistość. GC, to JVMa przynajmniej, ma kilka opcji, w tym
concurrent GC, które nie tylko nie powoduje przerw ale też - ponieważ sprząta
mniej więcej tak szybko jak przydziela pamięć - ma mniejsze wymagania co
do wolnej pamięci [1]. Wciąż potrzebuje dużej liczby obiektów nadających się
do zwolnienia, żeby mieć sensowną wydajność, ale umówmy się, że różne programy
mają różne podejście do alokacji. Część alokuje masę obiektów non-stop, część
alokuje praktycznie wszystko up-front a potem ma lokalne obiekty, które
formalnie są na stercie ale praktycznie trafiają na stos JITa, albo
jest ich po prostu niewiele.
Co oznacza tyle, że używanie GC nie zwalnia od myślenia o pamięci, nawet
jeżeli autorzy JVM odradzają pool-e obiektów (nic dziwnego) to nawet
w Javie warto czasami alokować obiekty rzadzaiej niż częściej (czytaj:
nie w wewnętrznej pętli), jeżeli mają być większe niż kilka B.
[1] Ok, wiem że link by się przydał, ale z tak wielkim rantem dzisiaj nie
podyskutuję.
--
Edek
Następne wpisy z tego wątku
- 11.07.13 18:41 firr
- 11.07.13 21:06 Edek
- 11.07.13 21:16 firr
- 11.07.13 21:24 Edek
- 11.07.13 21:31 firr
- 11.07.13 21:45 R.e.m.e.K
- 11.07.13 21:48 Edek
- 11.07.13 21:55 bartekltg
- 11.07.13 22:00 Edek
- 11.07.13 22:04 firr
- 11.07.13 22:06 firr
- 11.07.13 22:07 Edek
- 11.07.13 22:09 Przemek O
- 11.07.13 22:19 Stachu 'Dozzie' K.
- 11.07.13 22:24 A.L.
Najnowsze wątki z tej grupy
- 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ą."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
Najnowsze wątki
- 2025-05-18 Kto tak pięknie gra ?
- 2025-05-18 "Dobre obyczaje"? WTF?!
- 2025-05-18 Zgodnie z prawem, 11-letnia Patrycja może być przesłuchiwana jedynie w obecności matki, a nie psycholoszki
- 2025-05-18 MMSy
- 2025-05-18 Wiceminister "sprawiedliwości" A. Myrcha złamał ciszę wyborczą [rzepa]
- 2025-05-17 Głosowanie na prezydenta mDowód
- 2025-05-17 Karol i Patrycja - a może wielka miłość jak Romeo i Julia
- 2025-05-17 Re: Pamientajta, aby zamknÄ Ä ryje, bo jest cisza wyborcza, a co powiecie
- 2025-05-17 Phishing obok nas.
- 2025-05-17 poznaj siłe swoich pieniędzy
- 2025-05-17 Warszawa => Senior IT Recruitment Consultant <=
- 2025-05-17 Warszawa => DevOps Engineer <=
- 2025-05-17 Warszawa => Junior Account Manager <=
- 2025-05-17 Warszawa => Senior Programmer C <=
- 2025-05-17 Polska => Senior Key Account Manager <=