Zaťažšnie CPU???

Sekcia: Programovanie 30.12.2008 | 20:23
Avatar satan   Používateľ
ahojte, mam hracieservery na mojom PC v serverovni ovladam ho cez SSH (Putty)
Potrebujem ale vysvetlit co znamenaju jednotlive polozky z tohoto TOP vypisu:
top - 19:23:35 up 6 days, 22:18,  2 users,  load average: 4.22, 4.39, 4.37
Tasks:  86 total,   4 running,  82 sleeping,   0 stopped,   0 zombie
Cpu(s): 30.5% us,  5.8% sy,  0.0% ni, 60.5% id,  0.0% wa,  0.8% hi,  2.3% si
Mem:   3893292k total,  3718708k used,   174584k free,    95528k buffers
Swap:  1124508k total,     2600k used,  1121908k free,  2382272k cached
    • Re: Zaťažšnie CPU??? 30.12.2008 | 20:24
      Avatar satan   Používateľ
      OMG som tu prvy kratprepacte ze som netrafil inu kategoriu. Prepacte este raz
    • Re: Zaťažšnie CPU??? 30.12.2008 | 21:01
      Avatar borg Arch, Debian jessie  Administrátor
      man top
      • Re: Zaťažšnie CPU??? 30.12.2008 | 21:35
        satan   Návštevník
        FAkt sorry z toho a po anglicky fakt nedokazem vycitat co znamenaju tie udaje.
    • Re: Zaťažšnie CPU??? 30.12.2008 | 23:46
      Avatar Zefram Cochrane MS Windows Vista Ultimate 64bi  Používateľ
      >> top - 19:23:35 up 6 days, 22:18, 2 users, load average: 4.22, 4.39, 4.37

      uptime 19:23:35 up 6 days, 22:18

      2 users - prihlaseny 2 uzivatelia

      load average: 4.22, 4.39, 4.37 - ukazuje cpu utilization (nieco ako zatazenie) za poslednych 1, 5 a 15 minut, cislo samotne znamena kolkokrat vykonejsi procesor by si potreboval aby bolo zatazenie 100% a ziaden proces nemusel cakat na pridelenie procesoroveho casu. Tvoje je 4 takze by si potreboval 4x vykonejsi procesor ako mas. To znamena ze momentalne ti procesy bezia pomalsie ako by bezali keby bezali samostatne na tvojom pc (t.j. ziadne ine procesy). Ak je zatazene mensie ako 1 tak to znamena ze PC este stale stiha. Ale nie je to nic kriticke, ak by to bol webserver tak klient dostane html stranku namiesto za 10ms za 40ms.

      >> Tasks: 86 total, 4 running, 82 sleeping, 0 stopped, 0 zombie

      85 procesov,
      4 bezia,
      82 spi (napr. caka na stlacenie klavesy, atd...),
      0 je zastavenych (signalom 15 mozes zastavit proces, v konzole napr. ctrl+Z, obnovis cez fg)
      0 zombie - nic zvlastne, vyskytuje sa to u child procesov ktore vznikly forkom ineho procesu (typicky servre, desktopove aplikacie moc nie), viac na http://en.wikipedia.org/wiki/Zombie_process

      >> Cpu(s): 30.5% us, 5.8% sy, 0.0% ni, 60.5% id, 0.0% wa, 0.8% hi, 2.3% si

      skutocne zatazenie procesora, t.j. aka cinnost kolko zabera procesoru, sucet je 100% (okrem ni)
      30.5% us - kod vykonavany v user mode (bezne procesy)
      5.8% sy - kod vykonavany v kernel mode (drivre, sprava pamate, etc)
      0.0% ni - percento procesov ktorym uzivatel zvysil prioritu
      60.5% id - idle. vsetky i/o operacie, disk, siet - dost vysoke cislo, znamena to kolko percent casu procesy nic nerobia len cakaju na napr. nacitanie dat z disku alebo siete, ked das napr. kopirovat pomocou cp 100GB z 1 disku na druhy, zatazenie procesora bude minimalne ale idle bude vysoke lebo sa vacsinou bude cakat na disk
      0.0% wa - nieco ako idle ale len ciste i/o operacie, neviem preco ti to ukazuje 0, asi to mas rozbyte
      0.8% hi - hw prerusenia
      2.3% si - sw prerusenia

      >> Mem: 3893292k total, 3718708k used, 174584k free, 95528k buffers

      pamat
      3893292k total - spolu 4GB
      3718708k used - pouzite skoro 4GB (newbs su z tohoto casto zmateny ale toto je uplne normalne! ak chces aby pouzival menej pamate tak ju vyber a predaj ju, nepouzita pamat sa pouziva ako diskova cache)
      174584k free - volna 175 MB
      95528k buffers - buffre pouzite kernelom 95 MB

      >> Swap: 1124508k total, 2600k used, 1121908k free, 2382272k cached
      vyuzitie swapu, pocita sa vsetko co je primontovane (grep swap /etc/fstab) ako swap

      1124508k total - 1GB swap
      2600k used - 3 MB pouzite
      1121908k free - 1 GB volne
      2382272k cached - 2.3 GB v cachi (v pamati)

      pocitanie obsadenej pamate ale vobec nieje take jednoduche ako A+B-C, pre viac info o pamati pozri /proc/meminfo, cize nieco ako tvrdenie Program X zabera Y pamate na linuxe a Z pamate na windows je ako porovnavat hrusky a jablka.
      • Re: Zaťažšnie CPU??? 31.12.2008 | 06:21
        satan   Návštevník
        Velmi pekne ti dakujem. TAkto nedherne vysvetlene. Nice.

        TO znamena ze mam vytazeny procak na 100% a potreboval by som 5x rychlejsi procak. Omg. :)

        Posledna otazka na teba alebo Vas da sa nejak uvolnit zatazenie procesoora (nejak obmedzit tie lddle spiace procesyyy?
        • Re: Zaťažšnie CPU??? 31.12.2008 | 10:44
          Avatar Zefram Cochrane MS Windows Vista Ultimate 64bi  Používateľ
          Neznamena to nevyhnutne ze potrebujes 5x vykonejsi procak. Ak by sa jednalo o vysie spomenuty webserver tak klient nema sancu postrehnut zmenu 10ms oproti 40ms takze tam vykonejsi procesor netreba.

          Nevieme ktore procesy ti zeru tolko vykonu, hod sem vypis tohoto: ps aux

          Tieto herne servre (procesy) su casto sirene ako binarky a su neoptimalne skompilovane, v takom pripade treba prekompilovat (ak je to closed source tak sa to neda) alebo stiahnut novsiu verziu atd... Ak by to nebolo ani jedno z toho, je treba zistit kde to caka (iotop, latencytop), je mozne ze niektory proces intenzivne vyzuiva /tmp alebo /var alebo iny adresar na docasne subory, mozno by pomohlo primontovat ten adresar ako ramdisk. Ak ani to nepomoze, treba rychlejsi disk a sietovu kartu. Najprv by som ale poprosil vypis toho ps aux

          • Re: Zaťažšnie CPU??? 31.12.2008 | 15:37
            satan   Návštevník
            TU je vypis ps AUX
            http://www.pastebin.sk/10082/
            NO dalsia vec ktoru som sa dozvedel ze mam kernely pracujuce na frekvencii 250hz a ze sa daju prekompilovat na 1000hz.

            Tym padom by som vylacil zo servera stalych 1000FPS, lebo teraz mi to dropuje z 1000 na 200FPS
            btw napisem menuconfig a:

            [root@server4 ~]# menuconfig
            bash: menuconfig: command not found
            • Re: Zaťažšnie CPU??? 31.12.2008 | 15:48
              Avatar borg Arch, Debian jessie  Administrátor
              to je frekvencia casovaca. a urcite si to mylis. novsie jadra su beztikove. aby si to zmenil musis prekompilovat jadro. a menuconfig je parameter pre make (takze make menuconfig v adresary zo zdrojakmi jadra a nie v ~)
            • Re: Zaťažšnie CPU??? 31.12.2008 | 16:04
              Avatar Zefram Cochrane MS Windows Vista Ultimate 64bi  Používateľ
              Procesor zatazuju iba procesy "hlds_i686", to je counter strike server, bezi ich tam asi 5, kazdy zatazuje procesor na 5 az 10%. Takze toto je miesto ktore potrebujes vyladit (strace, latencia, zistit ci to zapisuje na disk alebo to i/o idle je kvoli sieti). Mozno skusit novsi kernel, Skusit prekompilovat kernel s optimalizaciou na servre, atd...
              • Re: Zaťažšnie CPU??? 31.12.2008 | 17:55
                satan   Návštevník
                A keby som ti vytvoril nejak usera a by si to spravil tu kompilaciu jadier kernelu na 1000hz bolo by to mozne? Koko to asi tak trva. AK bysom to zvladol ja mozes mi dat link na SVK alebo CZ navod??

                (myslim cez SSH)
          • Re: Zaťažšnie CPU??? 31.12.2008 | 15:46
            satan   Návštevník
            Hop omyl takto to je:
            [root@server4 servers]# make menuconfig
            make: *** No rule to make target `menuconfig'.  Stop.
            • Re: Zaťažšnie CPU??? 31.12.2008 | 19:49
              Avatar ----   Používateľ
              pohladaj si info na nete, toto nie je next->next->finish
            • Re: Zaťažšnie CPU??? 04.01.2009 | 13:49
              satan   Návštevník
              Posledná ptázka.

              Cpu(s): 30.5% us, 5.8% sy, 0.0% ni, 60.5% id, 0.0% wa, 0.8% hi, 2.3% si

              kolko je celkové zaťaženie CPU v tomto momente???
              Je to 30.5%???
              • Re: Zaťažšnie CPU??? 04.01.2009 | 13:53
                Avatar Zefram Cochrane MS Windows Vista Ultimate 64bi  Používateľ
                30.5+5.8+2.3+0.8 = 40%

                ale mas 60% idle a to vyrazne spomaluje ostatne procesy, takze zatazenie je defakto 100%

                Priklad, Keby si mal zatazenie cpu 1% a idle 99%, a spustis firefox, aj tak sa bude otvarat celu vecnost (napr. 30s namiesto 5s).
                • Re: Zaťažšnie CPU??? 04.01.2009 | 14:31
                  WlaSaTy   Návštevník
                  Idle alebo Waiting?

                  Idle je percentualna necinnost CPU. Ak by bol nejaky problem, napriklad disk prepnuty do PIO modu, tak by to asi nevyskocilo v idle.
                  • Re: Zaťažšnie CPU??? 04.01.2009 | 14:45
                    Avatar Zefram Cochrane MS Windows Vista Ultimate 64bi  Používateľ
                    • Re: Zaťažšnie CPU??? 04.01.2009 | 15:48
                      WlaSaTy   Návštevník
                      Pohoda, NT nerozisuje medzi tymito dvoma stavmi CPU schedulera. Je to koli tomu ze idle zasadne zobrazuje necinne a zaroven systemove operacie :) Holt, vmstat je tiez dobry nastroj.

                      Ale simulovat to nebudem :)