ugrás a tartalomhoz

Miért lassú a JavaScript mobilon?

retnek · 2013. Okt. 25. (P), 21.35
Lassú a javascript mobilon?
 
1

Használt már valaki ilyet?

Pepita · 2013. Okt. 26. (Szo), 07.45
Nekem ezen akadt meg a szemem, de alapjában véve szerintem ha valamit js-ben kell megoldani, akkor ott oldjuk meg. Az ilyen "még-rá-kreált" nyelvek vagy jók, vagy nem, de biztosan tanulhatsz egy új nyelvet. Kíváncsi lennék mások véleményére is erről.

Nekem leginkább az tetszene (ezért is az asm-en akadt meg a szemem), ha kaphatnék pl. js-en keresztül egy virtuális x86-os procit, pár mega memóriát (a DOM-mal), aztán hajrá assemblyben. Innentől megoldanám én a sebességet, illetve valószínűsítem, hogy az ilyen kreált köztes nyelvek is megtanulható praktikákat követnek. De mik ezek?
2

asm.js

Hidvégi Gábor · 2013. Okt. 26. (Szo), 08.50
Olyan helyekre jó, ahol sokat kell számolni, bitműveleteket végezni.
4

Bővebben?

Pepita · 2013. Okt. 26. (Szo), 10.12
Ez egyszerű feladatnak tűnik, ezt miért nem tudom én optimálisan leprogramozni js-ben? Gondolom nem vészesen nagy trükkök kellenek hozzá, de nem vagyok egy js-guru. Viszont szeretem én írni a kódomat (kivéve jQuery, kényelemből), méghozzá kevés erőforrásigénnyel. js-ben volna mit tanuljak e téren, ezért kérdeztem, igazából nem szeretnék ilyesmit használni, hanem eltanulni tőle a "trükköt". Ugyanígy építettem saját CMS-t, hogy átnyálaztam pl. a Drupal adatbázisát, megértettem, hogy miért úgy csinálja (ezúton is köszi Poetro!), ezek alapján terveztem meg a saját adatbázisom (persze sokkal egyszerűbbre, de előbb kitanultam az 1000 funkciós bicskát, aztán gyártottam le a 20 funkciósat, így az jóval gyorsabb lett).
Tehát ilyesmire lenne szükségem, hogy OK, Math egység mondjuk, azt én hogyan optimalizáljam?
7

Az asm.js a JavaScript egy

MadBence · 2013. Okt. 26. (Szo), 14.47
Az asm.js a JavaScript egy nagyon szűk részhalmaza, pl csak szám típusú változókat használhatsz (illetve a hozzájuk tartozó fix méretű tömböket), és olyan függvényeket, amik szintén ilyen típusú változókat adnak vissza/várnak paraméterben.
Tehát a DOM manipulációt, stringeket, objektumokat (dinamikus tömböket), closure-öket, stb el lehet felejteni.
8

Köszi, ezt

Pepita · 2013. Okt. 26. (Szo), 15.14
eddig is vettem, a kérdésem arra vonatkozott, hogy ha van best practice erre, az mi. Hogy én hogyan optimalizáljak. Lehet rosszul kérdeztem.
9

Optimalizáni, oké, de mit?

MadBence · 2013. Okt. 26. (Szo), 15.50
Optimalizáni, oké, de mit? Számolást nem igazán tudsz (erre való az asm.js), meg egy webes alkalmazásnál nem is ez lesz a szűk keresztmetszet.
Ahol az alkalmazások meghalnak, az a DOM manipulálás (a rosszul ütemezett írás/olvasások állandóan kényszerítik a böngészőt, hogy újraszámolja a stílusokat), itt kevés optimalizációval gyakorlatilag meg lehet duplázni a sebességet (cikk).
10

A fene...

Pepita · 2013. Okt. 26. (Szo), 15.55
Számolást nem igazán tudsz (erre való az asm.js)
Pont ezt szeretném adott esetben kiváltani. :)

A cikket nagyon köszönöm, könyvjelzőztem, mennem kell. Biztos hasznos lesz, első pislantásra is.
3

Akinek sok az ideje, érdemes

Hidvégi Gábor · 2013. Okt. 26. (Szo), 08.56
Akinek sok az ideje, érdemes elolvasni a cikk első linkjét, nagyon jól leírja a helyzetet: sem a mobileszközök (hardver), sem pedig a szoftver (js) terén nem számíthatunk belátható időn belül gyorsulásra. A mobil processzorok gyorsan elérték az órajelcsúcsukat, innentől csak a magok számával tudnak játszani, amit a javascripttel nem igazán tudunk kihasználni, míg a JS motorok a pár évvel ezelőtti nagy ugrás óta nem tudtak érdemben tovább javulni.
5

Te írtad le jól

Pepita · 2013. Okt. 26. (Szo), 10.16
Ezek szerint maradt a profi js-írás (nekünk) és pont. Hát sok idő az nincs, köszi az összefoglalást.
6

Remek írás

vbence · 2013. Okt. 26. (Szo), 12.39
Még csak bele-bele olvasgattam. A végén valószínűleg lesz egykét mondanóm.
11

A gond inkább az aksik

inf3rno · 2013. Okt. 29. (K), 13.51
A gond inkább az aksik kapacitásával van. Amíg nem elég jók az aksik, addig ha beleraksz plusz magot, vagy feltekered az órajelet, akkor sokkal hamarabb merül le. A hidrogén üzemanyag cellával is max 2x-es energia sűrűséget lehet elérni, szóval az sem a kivezető út, plusz még robbanékony is. A szénhidrogénes üzemanyag cellák sokkal többet tudnának, de nincs meg hozzájuk a technológia, és szerintem még legalább 30 évig nem is lesz.

Energy_density
Lithium-ion battery: 0.9–2.63 MJ/L
Hydrogen (compressed at 70 MPa): 5.6 MJ/L
Gasoline (petrol) / Diesel: ~36 MJ/L

Ki szeret 700bar nyomású hidrogénnel dolgozni?! :D

Csak egy kis érzékeltetés, a mostani samsung mobilom 3 óra GPS-ezés után lemerül. Ha benzines üzemanyag cella lenne benne, akkor 3 napig bírná egy huzamban...
12

Ha már GPS-el

Pepita · 2013. Okt. 30. (Sze), 00.57
túrázol, elfér a hátadon egy 25 kg-os áramfejlesztő, és akkor mindjárt villanyrezsón is főzhetsz, nemhogy a telód töltöd... :)
13

Tuti, viszek egy aggregátort,

inf3rno · 2013. Okt. 30. (Sze), 13.38
Tuti, viszek egy aggregátort, és a biciklit is azzal hajtom... :D