proc by Firefox nemel byt schopny pouzivat vice procesoru, kdyz je zatim „jen“ multi-threadovy?
Firefox se blíží k paralelizaci
Firefox na rozdíl od jiných prohlížečů neumí běžet ve více procesech. Jednak mu to brání ve využití více procesorů (jader), ale také tím není možno chránit panely proti pádu jednoho z nich. Konkurenční Google Chrome či MSIE 8 už tyto možnosti mají. Existuje ovšem projekt Electrolysis, který se snaží do Firefoxu tyto možnosti už delší dobu přidat. K dispozici jsou už první testy takto upraveného Firefoxu, který je ale stále hluboko ve vývojové fázi. Výsledek? Došlo k razantnímu navýšení výkonu (asi třikrát proti standardní verzi FF), ale Chrome je stále rychlejší o 50 %. Vývojová verze je navíc stále ještě hodně nestabilní.
(Zdroj: Slashdot)
Dále čtěte…
- Optimalizace bootu z 15 na 2,5 sekundy Včera 13:01
- Vývojáři Amaroku hledají testery pro verzi 2.6 Včera 16:17
- Dostane se na Linux Carmageddon: Reincarnation? Včera 12:02
- Kdenlive 0.9.2 umí smazat více položek najednou Včera 14:50
- Eben Moglen: Facebook je ekologickou katastrofou lidské duše Včera 13:23
Re: Firefox se blíží k paralelizaci
celé vláknoRe: Firefox se blíží k paralelizaci
celé vláknoProtože implementace Firefoxu nestojí ani za zlámanou grešli.
Re: Firefox se blíží k paralelizaci
celé vláknoA co doporučujete jako alternativu?
Re: Firefox se blíží k paralelizaci
celé vláknoale prosím neraďte telnet ani netcat .-)
Re: Firefox se blíží k paralelizaci
celé vláknoLinks. :)
Re: Firefox se blíží k paralelizaci
celé vláknoSpustit si víc Firefoxů :-).
Re: Firefox se blíží k paralelizaci
celé vláknoJde to nějak jednoduše udělat?
Re: Firefox se blíží k paralelizaci
celé vláknonejde…
Re: Firefox se blíží k paralelizaci
celé vláknoMuzete si udelat vice profilu a pak pouzit parametr –no-remote.
Vytvorite si nejake profily:
$firefox -ProfileManager
Spustite jej jako extra instanci:
$firefox -P jmeno_profilu –no-remote
Vice instanci od jednoho profilu bohuzel pustit nelze, jsou problemy s paralelnim pristupem do databazi a podobne.
Re: Firefox se blíží k paralelizaci
celé vláknoa kazdy s vlastnym chroot jailom alebo VM aby sa nemohli navzajom zhodit ;-)
akurat ten vykon sa takto asi nepodari zvysit ;-)
Re: Firefox se blíží k paralelizaci
celé vláknoajked si pustis viac firefoxov tak ti to pobezi len v jednom procese :(
Re: Firefox se blíží k paralelizaci
celé vláknoFF je three-threadovy. Tzn. proces FF tvori tri thready:
- Main thread – dela vsechnu praci a smi alokovat pamet a cist ze socketu
- UI thread – kresli na obrazovku
- JS thread – spidermonkey intepreter
- pak jsou tam jeste dalsi „servisni“ vlakna ale ta vlastne nic nedelaji.
Napr. Main thread posle http request do TCP socketu a pozada servisni vlakno aby cekalo v pollu. V okamziku kdy prijde odpoved, tak servisni vlakno posle zpravu do fronty Main threadu a ten uz pak nacte data do bufferu, preparsuje, …
Servisni thread nesmi cist ze socketu, nesmi alokovat pamet ani nesmi zapisovat do sdilenych bufferu. Pokud zrovna Main thread zaloval funkci implementovanou v JS a ceka na JSthread tak doba mezi navratem z pollu a volanim read muze byt velice dlouha. Takhle to alespon fungovalo na FF2.x. Cela tahle tragedie se jmenuje XPCOM.
Re: Firefox se blíží k paralelizaci
celé vláknoale kazdy s tech tri threadu muze bezet na jinem procesoru, ne (tj. sou to „kernel“ thready)?
Re: Firefox se blíží k paralelizaci
celé vláknoTo ano, ale vetsinu prace dela ten Main thread – parsovani HTML,XML,rendering,…
Main thread taky vykonava metody rozhrani vytvorene v C++. Rozhrani implementovana v JS jsou vykonavana v JS threadu – pokud ale JS thread neco dela, tak na nej vetsinou Main thread ceka. V terminologii Mozilly se tomu rika sychronni XPROXY volani. Misto toho abych zavolal nejakou metodu primo, tak vlozim pozadavek do fronty jineho vlakna a cekam na odpoved a nic nedelam. Sance ze by nejednou bezelo vice vlaken je minimalni. Takhle to alespon bylo na FF2, dneska uz je to mozna lepsi. Porad ale ten samy JS thread vykovava kod z HTML stranek i vykonava metody rozhrani implementovane v JS.
Re: Firefox se blíží k paralelizaci
celé vláknoUpozorňoval jsem tu v diskusích na to, že FF chybí multithreading. „Kupodivu“ mi diskutéři říkali, že taková věc je úplně zbytečná. No, uživatelé MSIE vědí svoje.

