Jak jsi to meril ??
<action=`mpc -q toggle`>\
\<action=`mpc -q next` button=3>\
\<action=`mpc -q prev` button=2>\
\%mpd%\
\</action>\
\</action>\
\</action>
xmonad zabere na disku bezne jen 3 MiB (zaklad ma jen 650 KiB !), xmobar asi 2 MiB. Prostredi je jen kvuli kompilaci konfiguaracniho zdrojaku, pro beh neni potreba.
ls -l `which xmonad`
-rwxr-xr-x 1 root root 668392 srp 4 07:48 /usr/bin/xmonad
ls -l ~/.xmonad/xmonad-x86_64-linux
-rwxr-xr-x 1 user group 4304552 zář 11 14:28 /home/user/.xmonad/xmonad-x86_64-linux
Z disku tedy zaberou jen kolem 6 MiB.
Díky za připomínky a návody pro případné zájemce. A co se týká těch údajů:
- spotřebu paměti jsem bral přímo z panelů jednotlivých WM
- do větších úprav jsem se už nepouštěl, protože se XMonad ani XMobar nestal mým miláškem...
- velikost na disku jsem vždy bral z příslušného instalačního příkazu a dál už žádnou optimalizaci neřešil
spotřebu paměti jsem bral přímo z panelů jednotlivých WM
Pred chvili podle kratkeho pruzkumu na IRC se pohybuje spotreba pameti uzivatelu mezi 6 az 15 MiB, median je kolem 9.
Tech +200M je tedy zcela mimo relaci a znamena to, ze jsi bud precetl spatne cislo (nejspis virtualni velikost pameti k procesu ?) nebo ti leakuje zmrseny konfigurak.
velikost na disku jsem vždy bral z příslušného instalačního příkazu a dál už žádnou optimalizaci neřešil
Ne, to je vazne nesmysl. Jak uz psal nekdo niz. S takovou logikou by se u kazdeho i toho nejprimitivnejsiho programu muselo duplicitne zapocitavat cele vyvojove prostredi a vyvojove knihovny potrebne k jeho sestaveni. Ze uz mas predem z jinych duvodu nainstalovane ruby, lua, python, pygobject, pycairo, pygtk, xpyb, gcc, g++, libX11-dev, libxdg-dev, freetype-dev, lgi-dev, glibc atd. prece na tom nic nemeni.
Podle stejneho principu tvrdim, ze xmonad potrebuje k instalaci jen 9 MiB, protoze ghc a vyvojove knihovny jsem tam uz mel:
PACKAGE NAME: xmonad-0.11-x86_64-1_SBo COMPRESSED PACKAGE SIZE: 1.7M UNCOMPRESSED PACKAGE SIZE: 9.0M
Zkompilovana verze konfiguraku xmonad.hs se nachazi ve stejnem adresari a staci nastavit, aby se spoustela primo z DM nebo xinitu a cele "prostredi haskellu" vcetne balicku xmonad lze odinstalovat a bude to nadale fungovat.
Proste si vytvoris svoji verzi binarky celeho WM, ktera nema zadne extra zavislosti.
ad paměť
Pokud někdo nebo něco přečetlo špatné číslo, tak jsem to byl těžko já. Pokud jsem nějak blbě nastavil XMObar, tak by to bylo možné, ale to číslo jsem prostě přečetl z panelu. Takže buď jsem ten panel špatně nastavil já nebo to blbě ukazuje ten panel
ad místo
Pořád si nějak nerozumíme, takže ještě jednou:
vytvořím tři stejné virtuální mašiny se stejnou distribucí a stejnou sadou balíků a aplikací (instaloval jsem základní sadu Debianu a k tomu Xorg + Lightdm a mc)
pak dám v každé z nich jeden z trojice příkazů:
aptitude install awesome
aptitude install subtle
aptitude install xmonad
a přečtu tři čísla. Co je na tom nelogického nebo nepochopitelného?
Nejde přece až tolik o absolutní čísla jako spíš o relativní srovnání při stejných výchozích podmínkách, ne?
ad pamet)
xmobar dokaze zobrazit spotrebu pameti u procesu jen pluginem TopMem a ten ukazuje RSS, a to nelze zmenit bez zasahu do zdrojaku. Resident Set Size je obraz kodu v pameti plus naalokovany zasobnik, hromada a kod sdilenych knihoven fyzicky v pameti a byva jeste mensi o pamet odlozenou na swap.
Pokud to opravdu dohromady ukazovalo pres 200 MB, tak to muselo leakovat jak blazen a rozhodne nejde o obvyklou situaci.
Kdyz ostatni maji o rad nizsi cisla a kazdy si to muze sam overit, tak kde je chyba ?
ad misto)
napsal's opakovane, ze xmonad potrebuje > 0,5 GB mista na disku, coz je samo o sobe mirne receno nepravda a muze u neznaleho ctenare vzbudit dojem, ze je rozezranejsi nez cele KDE nebo GNOME. Ocekaval bych u nekoho, kdo se odvazi publikovat, ze tomu bude aspon trochu rozumet.
Jen jsem se snazil slusne upozornit na bludy, ktere se v clancich objevily. Je nesmyslne na nich trvat a bud je mas vyvratit argumenty nebo je opravit a doplnit.
ad paměť
Ale já přece netvrdím, že někde nemůže být chyba. Problém je ale podle mě někde jinde. Pokud mám tři stejné instalace s úplně stejnou SW výbavou a každý WM mi pomocí svých vlastních nástrojů něco ukazuje, tak to asi má nějakou vypovídaí schopnost, ne? I když se třeba ukáže, že to je špatně.
Je fakt, že jsem to dál nezkoumal a neověřoval
ad místo
Ano, píšu to opakovaně, protože to tak prostě je. A navíc, napsal jsem ve příslušném dílu toto:
"Co může být trochu zarážející, je celková velikost instalovaných balíčků. Před XMonad byl instalován pouze Xorg, mc a Lightdm a tato velikost je skoro 550 MB. Samo o sobě to sice není mnoho, ale na "lehkotonážní" WM je to celkem dost. "
Dokaž mi tedy prosím, že příkaz aptitude install xmonad na Debianu testing, kde je základní systém bez prostředí, Xorg, Lightdm a dm, ukáže nějaké jiné číslo, třeba jak tu bylo zmíněno nějakých 9MB
každý WM mi pomocí svých vlastních nástrojů něco ukazuje, tak to asi má nějakou vypovídaí schopnost, ne?
Pokud vim, tak xmonad zadny takovy "vlastni nastroj" na zobrazovani spotreby pameti nema. Nekonkretne si uvadel xmobar, ale pochybuju ze si ho vubec dokazal pro to nastavit, protoze jediny plugin ktery to teoreticky umi je TopMem a ten se v defaultu nespousti a umi jen RSS.
Pokud neveris ze v clanku prezentovana spotreba pameti je mimo realitu, mas moznost si to sam znovu overit a pak se tu muzeme pobavit nad konkretnimi udaji. Pristup typu nekde jsem precetl nejake cislo, ani sam nevim co presne znamena, ale stojim si za nim, mi prijde dost neseriozni.
Dokaž mi tedy prosím, že příkaz aptitude install xmonad na Debianu testing, kde je základní systém bez prostředí, Xorg, Lightdm a dm, ukáže nějaké jiné číslo, třeba jak tu bylo zmíněno nějakých 9MB
"Chybovat je v povaze každého člověka, ale jen hlupák ve svém omylu setrvává …"
Kdyz tak me oprav, ale clanek byl snad o dlazdicovych spravcich oken, nikoli recenze instalace na "zakladnim systemu" Debianu ? Za dalsi jsi tu byl vyvaden z omylu, ze zrejme z neznalosti michas hrusky s jabkama a pletes si behove zavislosti s vyvojovyma, ale zrejme do ted marne. Kdyby na to bylo v clanku upozorneno, tak by nebylo namitek, ale takhle to je silne zavadejici.
A tady mas dukaz: instalacni balicek pro Slackware64 current s xmonad WM, ktery nepotrebuje nic z tech 540 GB zavislosti a bezi na holych X11.
Promiň, ale nemůžu se zbavit dojmu, že jsi článek ani moje reakce nečetl moc pozorně...
Já jsem jasně deklaroval, co a jak jsem instaloval, jakou distribuci, jaké aplikace a jakým způsobem jsem dospěl k číslům o velikosti (pro jistotu znovu opakuji, bylo to formulováno takto: "Co může být trochu zarážející, je celková velikost instalovaných balíčků. Před XMonad byl instalován pouze Xorg, mc a Lightdm a tato velikost je skoro 550 MB")
Pak Tě požádám, abys mi pro jasně formulovaný případ dokázal že nemám pravdu.
A Ty mi předhodíš kompilovaný balíček (já uváděl velikost PO instalaci) ze Slackwaru (já používal Debian). A jenom na doplnění: nikde jsem neuváděl, že závislostí je 540 GB
Mám na základě tohoto "důkazu" opravdu brát vážně to o hlupákovi a míchání jablek a hrušek?
Ale abych byl konkrétnější:
spustil jsem si virtuál, na kterém je Subtle z doby článku a spustil na něm několikrát zmiňovaný příkaz na instalaci
aptitude install xmonad
a zde je výsledek:
http://www.edisk.cz/stahni/30227/XMonad-1.jpg_150.24KB.html
A ještě jedna věc: když bych bral vážně Tvůj pokus se Slackem, tak stačí jenom trochu zapátrat a tady
http://slackbuilds.org/repository/14.1/desktop/xmonad/
se můžeš dozvědět, že jenom jedna závislost (zdrojový balík ke GHC) má velikost 121 MB.
Pokud tedy já jsem hlupák a nemám ponětí o tom, že XMOnad lze nainstalovat, konfigurovat a provozovat BEZ všech závislostí, tak musí být ještě větší hlupáci správci balíčků v Debianu a buildů ve Slacku, protože evidentně trvají na něčem, co je naprostý nesmysl...
Pokud tedy já jsem hlupák a nemám ponětí o tom, že XMOnad lze nainstalovat, konfigurovat a provozovat BEZ všech závislostí, tak musí být ještě větší hlupáci správci balíčků v Debianu a buildů ve Slacku, protože evidentně trvají na něčem, co je naprostý nesmysl
Po stopadesate. Spravci binarnich balicku distribuci jako Debian davaji zavislosti na cele vyvojove prostredi nikoli z duvodu ze xmonad nejde bez nich spustit, ale aby si uzivatel mohl provest vlastni nastaveni ktere se dela upravou zdrojaku a jeho prelozenim do spustitelne binarky.
Ani naznakem na to ani v jednom dile serialu neupozornujes, podle vseho z neznalosti.
ad Slackware) u slackbuildu jsou zavislosti na ghc samozrejme mandatorni, protoze slouzi prave a jenom k sestaveni balicku ze zdrojovych kodu. Ach jo :(
Nevím jak Ty, ale já tady
https://packages.debian.org/search?keywords=xmonad&searchon=names&suite=testing§ion=all
vidím napsáno, že se jedná o balíček XMONAD s tímto popisem:
Lightweight X11 window manager written in Haskell
A přesně tento jeden jediný balíček jsem instaloval.
Ano, nikde jsem na to neupozornil, ale taky jsem nikde netvrdil, že to nejde jinak.
Takže bych se rád poučil v tomto smyslu:
1. co a jak mají zájemci na Debianu instalovat, aby se jim na závislostech nedotáhlo to, co já tak nesprávně popisuju
2. co je potřeba minimálně k tomu, aby se dala provést prvotní konfigurace
3. co je možné poté odinstalovat bez rizika, že když budou chtít provést změnu v konfiguraci, aby nemuseli něco znovu instalovat
Aplikace userlandu jsou nezavisle na nejake konkretni distribuci, dokonce ani na Linuxu. A jak resi balicky zrovna Debian me nezajima a IMHO to nebylo ani tematem clanku.
Pro priklad - kolega v praci pouziva xmonad na starsim Slackware uz vic nez dva roky a ghc ani vyvojove knihovny haskellu tam nikdy nemel nainstalovane. Mika Varri tehdy poskytoval repozitar s binarnimi balicky pro 13.0, 13.1 a tusim i 13.37 s rozumnym defaultem. Jak mu mam vysvetlit, ze bez tech 0,5 GB se vlastne nemuze obejit, prestoze s tim denne dela ?
Sorry, ale dalsi debata na toto tema mi prijde zbytecna a nebudu se k ni vracet.
Jen pro doplneni - "distribuce" OpenBSD nabizi instalacni balicek xmonad bez probiranych zavislosti:
http://ports.su/x11/xmonad,-main
http://mirror.steadynet.cz/pub/OpenBSD/5.5/packages/amd64/xmonad-0.11p1.tgz
Velikost po rozbaleni cca 3 MiB.
Vyvojari OpenBSD jsou asi "chytrejsi", protoze nabizi moznost volby, na rozdil od mainstreamovych Linuxovych distribuci:
Important note: if you want to configure xmonad without patching
the default config file and rebuilding the package, you should also
install the xmonad-lib package, which makes runtime configuration
possible.
Jen pro doplnění: na stránkách samotného projektu XMonad je následující poznámka:
Notes for Debian/Ubuntu users:
On debian, xmonad is split into three packages, and it might not be obvious what they do.
xmonad lets you run xmonad in its default configuration.
libghc-xmonad-dev lets you write a configuration file using core functionality.
libghc-xmonad-contrib-dev includes all of the contrib modules.
Pokud tomu dobře rozumím, tak samotný balík xmonad sice může běžet, ale jenom s defaultní konfigurací
Co když budou v systému dva uživatelé a každý z nich bude chtít jinou/vlastní konfiguraci XMonad?
Jak se to bude řešit?
Podobně bych já mohl napsat, že mě nezajímá, jak to řeší jiné distribuce. Ale neudělám to, protože mě to zajímá.
Debian sice nebyl nosným tématem článku, ale žádný WM přece nemůže fungovat sám o sobě, nebo ano?
A když vyberu jedno distro, na kterém něco zkouším, tak se asi těžko můžu vyhnout tomu, jak je něco na to distru řešené - viz další příspěvek s odkazem na XMonad stránky
Dal jsem si také tu práci a spustil virtuál s XMonad, abych ověřil věci kolem RAM
Závěry bych viděl asi takto:
1. určitě je moje chyba, že jsem si číslo z XMobaru neověřil jinak a jinde
2. pokud se číslo z XMobaru a odjinud liší (tady je odkaz na porovnání s HTOP, kde je jasné, že se liší)
http://www.edisk.cz/stahni/73054/XMonad-2.jpg_173.16KB.html
tak je to moje chyba jenom v tom případě, že jsem nějak pokazil konfiguraci XMobaru
3. určitě není moje chyba ve smyslu někde jsem přečetl nějaké číslo, protože jsem jasně deklaroval, kde a jaké číslo jsem přečetl a toto číslo mohl vidět každý už ve článku, pokud by si prohlédl obrázky. Také konfigurace je známá.
Pokud je v ní nějaká chyba, tak uvítám její identifikaci, aby si případní zájemci mohli udělat opravu
Zrovna u windowmanageru saham do konfigurace celkem casto (rozumej jednou za dva mesice), bud kvuli novym klavesovym zkratkam (vymena multimedialni klavesnice/mysi), nebo kvuli netradicnimu programu, ktery potrebuje spravne "ohintovat" (viz gimp pred single-window rezimem), nebo kvuli prenastaveni hooku, nebo kvuli zmene aplikace co se ma spustit/zkontrolvat, ze je spustena pri (re)startu windowmanageru.
Haskell, se na rozdil od pythonu a perlu na normalnich stanicich nevyskytuje. Lua je tak mala, ze se ztrati kdekoliv. Tudiz tvrdit, ze to potrebuje 0.5GB je naprosto na miste. Jen je potreba zminit, ze je to kvuli editaci konfigurace.
> Nevim jak dzen nebo conky, ale xmobar umi obsluhovat udalosti tlacitek mysi.
Dzen umí obsluhovat klikání taky. Viz https://github.com/robm/dzen/blob/master/README sekce "Interaction". Podporuje to ale až od některé novější verze, nevím teď přesně od které.
Nechápu, jak na Rootu může vyjít článek, který obsahuje takové nepřesné informace.
Provozoval jsem Xmonad něco přes 1 rok na svém notebooku, než jsem zjistil, že vlastně dlaždice nepotřebuji.
Po startu do prostředí Xmonadu+Xmobaru+Stalonetray jsem měl zabraných 80MB v RAM (z toho 60 MB si vzalo jádro, >10MB Xka, 5MB systemd a zbytek padnul na Xmonad). Autore, jsi první člověk na planetě, který dokázal nakonfigurovat Xmonad, aby mu zabíral v RAM 200+MB. Gratuluji. A nebo neumíš měřit?
A asi největší blbost je zahrnovat kompiler a knihovny jazyka do celkového prostoru zabíraného na disku nějakým program.
Když budeš posuzovat Subtl, tak tam taky zahrneš celý ruby? A u DWM celý Céčko včetně GCC a ruzných C knihoven?! Pobavilo.
Jsme na rootu, tak by se tato situace dala odborně vysvětlit, nemyslíš?
Ale abych jenom nekritizoval, určitě chválím na české poměry nevídanou sérii o Xmonadu. Sám bych si na to netroufl.
A pro ostatní bych dodal, že pokud na notebooku potřebují dlaždice, tak Xmonad je podle mých zkušeností nejšetrnější k systémovým prostředkům.
U ostatních dlaždicových správců jsem se setkal s nepochopitelným vytěžováním CPU při běžných operacích jako je změna fokusu okna, jeho pozice, přepnutí plochy a pod. Nejhorší asi byl Awesome WM, tam to lítalo k 10% CPU. O něco lepší byl např. DWM - kolem 5%. Xmonad se ale v mé konfiguraci ukázal jako zdaleka nejúspornější a při běžné činnosti proces xmonadu a Xorg v součtu nepřesahoval 3% CPU.
Tak asi tak. Každý by si podle mě měl na nějaký čas zkusit změnit své zažité paradigma na desktopu a okusit dlaždice.
Díky za obsáhlou reakci.
Přiznám se, že jsem ani jeden z diskutovaných ukazatelů nijak podrobně nerozebíral. Ale jak by řekl klasik - sledujte tok mých myšlenek:
Co se týká spotřeby paměti, tak jsem prostě a jednoduše vzal číslo, které ukázal XMobar. Ano, je možné, že jsem to měl ověřit ještě přes htop nebo něco podobného.
Ale! Tam by se třeba ukázalo, že je spotřeba podobná, jako u jiných WM, ale nevím to, nezkoušel jsem to.
Výsledek by byl ale jenom v tom, že bych (možná) zjistil, že panel ukazuje nějakou jinou hodnotu, než systémové utilitky
Udělal jsem to u všech WM stejně - uvedl čísla z jejich vlastních nástrojů
Co se týká prostoru na disku
Chápu samozřejmě Tvou reakci, ale myslím si, že nemáš ve všem pravdu.
To číslo se vzalo jednoduše: zadal jsem aptitude install xmonad a přečetl to, co mi správce vyhodil
Ano, jistě by se to dalo rozebrat a komentovat, to máš pravdu. Je možné, že na jiném distru by to bylo jinak.
Není přece problém uživatele, že do jednoho WM se musí něco zahrnout a do druhého ne, protože třeba Ruby už v systému je, ne?
A co by se stalo, kdybych provedl úvodní nastavení XMonad a pak odinstaloval Haskell, resp. GHC?
Vzal by s sebou správce taky WM nebo nevzal? Co bych dělal v momentě, kdy bych potřeboval něco znovu nastavit? Instaloval to zpátky?
Kdybych měl XMonad na něčem, co nemá 64 GB na disku, tak bych to pravda ani neřešil. 600 MB na disku >500 GB není o ničem
A nakonec spotřeba u Awesome - používám na hlavním stroji, ale tam je Intel 4C/8T CPU a ten se při běžné práci fláká mezi 1-2%. Víc naskočí jenom při práci ve virtuálu nebo při kompilaci něčeho vydatnějšího, jako LO nebo QT
Ani na notesu s jedním ULV jádrem to není nijak dramatické.
> To číslo se vzalo jednoduše: zadal jsem aptitude install xmonad a přečetl to, co mi správce vyhodil
To se právě lidem moc nelíbí. Nikdo neví, co máš za distro, co máš za nainstalované balíky (a ani to vědět nepotřebuje). Co když bych měl čerstvě nainstalovanou minimální verzi některé distribuce a neměl tam ani Xka a zkusil změřit, kolik že ten XMonad potřebuje, tím stejným způsobem jako ve článku. Mohl bych říct, že XMonad potřebuje 2GB místa na disku?
Nebo naopak, když budu programovat v haskelu, budu mít GHC nainstalované kvůli práci/škole/whatever a rozhodnu se, že zkusím XMonad. Kolik mi asi aptitude vypíše že budu potřebovat místa? 5MB?
Snažím se říct, že to nemůžeš testovat tak jednoduše, protože když by každý z nás zkusil stejný test, dostali bychom se k naprosto jiným výsledkům, přitom xmonad by nám měl zabírat místa zhruba stejně.
> A co by se stalo, kdybych provedl úvodní nastavení XMonad a pak odinstaloval Haskell, resp. GHC?
GHC by mělo jít bez problému odinstalovat, protože ho ke spouštění té binárky nijak nepotřebuješ. Stejně tomu bude asi u DWM a gcc.
A nakonec spotřeba u Awesome - používám na hlavním stroji, ale tam je Intel 4C/8T CPU a ten se při běžné práci fláká mezi 1-2%. Víc naskočí jenom při práci ve virtuálu nebo při kompilaci něčeho vydatnějšího, jako LO nebo QT
Ach jo ;-) Zase michas hrusky s jablky. Vyuziti CPU kompilaci nebo spoustenim LibreOffice prece nema zadnou souvislost s WM.
Takovym primitivnim testem je treba rychle prepinani mezi okny nebo tagy, spusteni stovek jednoduchych aplikaci jako xterm apod.
Zkus si treba v awesome v layoutu 'tile' spustit dva terminaly a v jednom spustit (h)top. Pak drzet klavesovou zkratku (tusim Win-Tab) a tak mezi obema okny prepinat. Spotreba CPU mi vyleti z 1% na 50 az 60% . Podobne je na tom qtile, tam to vyskoci na 40 az 50%.
Testovano na poslednich verzich - awesome 3.5.5 a qtile 0.8 .
xmonad vyskoci na15 az 20%. Nejoptimalnejsi, aspon co do smycky zpracovani udalosti a zmenu fokusu, vyslo i3wm a subtle. Tam podobny test nevzal vic nez 10%.
Takže jsem udělal restart a vyzkoušel 4 kombinace: terminály XTerm a Termit, layouty Tile a Float. Výsledky (když trvale držím Win+Tab):
číslo samo o sobě vysoké, u všech případů HTop ukazuje celkově někde mezi 50-55%.
ALE: odhadem v cca 80% to zatěžuje jenom 1 vlákno, ve cca 95% dvě a občas tři
Pokud udělám to samé a stisknu Win+Tab cca 1x za vteřinu (což mi přijde jako mnohem "reálnější" scénář), HTop ukazuje mezi 2-6%
Mám starší Intel i7-860, 4C/8T
Pokud udělám to samé a stisknu Win+Tab cca 1x za vteřinu (což mi přijde jako mnohem "reálnější" scénář)
To jiste, ale vyrazny rozdil ve vytizeni a odezve u tak jednoducheho pripadu se o to vic projevi v komplexnejsich situacich. Awesome jsem pouzival asi pul roku a kdyz byly otevreny desitky aplikaci tak prepinani mezi nimi a tagy s sebou neslo viditelne prekreslovani. Odezva sice byla porad lepsi nez treba u kwin z KDE, ale i tak to pusobilo rusive, zvlast kdyz je zkusenost s necim lepsim. Okamzita reakce je navykova ;-)
Muzes nejak konkretizovat ten problem s kodem? Je nefunkcni nebo o co jde?
Docela tuhle oblast sleduju a jsem za clanky rad.
Pockam jeste na Awesome a chci si neco vyzkouset.
Nerad bych ale zkousel nenco, co je spatne nebo nefunkcni.
Predem dekuji za odpoved