none
terminál, cpu, jádra a thready

    Dotaz

  • Mám server Windows 2008 (R1).

    Máme síťový program . nazvěme jej program.exe.

    Server pracuje jako terminálový.

    K serveru se připojí 5 uživatelů a spustí si program.exe.

    Ve správci úloh vidím 5x spuštěný program.exe ( pokaždé jiný uživatel).

    A ptám se takto:

    1. Jak funguje přidělování  HW prostředků procesoru (jader, threadů) jednotlivým uživatelům ?
    2. Budou všechny spuštěné instance programu Program.exe běžet na jednom jádře nebo mohou běžet (pro jednotlivé uživatele) na různých jádrech ?
    3. Pokud můžou běžet na různých jádrech – jak mám nastavit aby „uživatel 1 pokaždé  když se připojí používal jádro 1“ ,a podobně  uživatel jádro 2, už. 3 jádro 3 atd ?

    Prosil bych o nějakou přesnou specifikaci jak toto správně identifikovat a případně nastavit. Mám CPU Xeon se 4 jádry a hyperthreadingem (ve správci úloh se tváří jako 8 oken grafů výkonu CPU) a mám pocit že nevyužíváme výkon CPU přes všechny jádra - jakoby program.exe běžel v jednom jádře pro všechny uživatele (=celkové zatížení vidíme max 25%, což je jedno jádro na 100% a ostatní nedělají nic). Ví někdo jak to přesně funguje ?

    11. července 2013 21:00

Odpovědi

Všechny reakce

  • Ad1: procesor se neprideluje uzivatelum, ale procesum a jejich threadum = kazdy uzivatel muze mit proces na vsech jadrech

    ad2: tezka odpoved. za rozdelovani zateze je teoreticky zodpovedny OS. Nicmene je mozne nastavit konkretnimu procesu tzv. afinitu = priradit jen konretni jadra. Afinitu lze priradit zvenci, napr. pres taskManager, nebo primo programnovym kodem aplikace.

    ad3: teoreticky ano. zde http://blog.tune-up.com/windows-insights/assign-processor-affinity-to-improve-performance/ mate obsahlou stat, jak na to. Takze si umim predstavit spousteci script, ktery bude pri kazdem spusteni cyklovat afinitou pres jednotliva jadra. Otazkou je, zda se afinita prirazuje procesu, nebo "EXE jmenu". Netusim, nezkousel jsem nikdy na vice stejnych spustenych procesech. Zkuste, uvidite.

    Zkouseli jsme najit nejaky jednoduchy zpusob, jak zjistit na jakem jadre dany proces bezi. Kolega po chvili luxovani nasel CPU Control na  http://www.koma-code.de/?option=com_content&task=view&id=88&Itemid=93


    12. července 2013 8:21
  • Ahoj Ivane,

    na jakém jádře běží aplikace můžeš zjistit například s pomocí aplikace Process Explorer v15.31 http://technet.microsoft.com/cs-cz/sysinternals/bb896653

    případně zkus další nástroje

    http://technet.microsoft.com/cs-cz/sysinternals/bb795533


    Michal Zobec | IT Consultant, Lightning Group Company | Michal Zobec Blog | Virtuální PC Blog | Můj profil na LinkedIn
    V případě, že se vám zdají moje příspěvky užitečné, označte je prosím.
    Pokud vám moje příspěvky poskytly řešení vašeho problému, označte je jako odpovědi.

    12. července 2013 8:30
  • Tak to se MZ ptam, jak. Bud jsem slepy, nebo hloupy, ale ja to v processExploreru nenasel.
    12. července 2013 8:39
  • Zatím mám nastaveno vše default. Program.exe tedy může používat všechna jádra (ve správci úloh - spřažení - má zatrženy všechny CPU). Nicméně si kladu otázku zda to opravdu dělá to co má. Nastavení Afinity pro konkrétní uživatele bych použil až kdyby nebylo jiného řešení. A ten program z koma-code.de jsem zkoušel na NB kde mám W8 - vidím ale jen procesy a můžu nastavit na jakých jádrech jim povolím běžet, nevidím však informaci na jakém jádře to běží teď. A na W2008 standart to sice nainstaluju, ale procesy nevidím vůbec žádné. Jestli to nemá nějaké omezení že pro servery to není určeno (serverové OS nejsou v seznamu)...
    12. července 2013 9:15
  • ahoj Mirku, díky za upozornění. Kdysi jsem si ověřoval jestli jedna aplikace využívá více procesorů a na kterých běží. myslel jsem že to byl Process Explorer, teď jsem to hledal a taky nemůžu najít.

    tak beru zpět :) bohužel si nemůžu vzpomenout, kterou utilitkou jsem to zjišťoval :(


    Michal Zobec | IT Consultant, Lightning Group Company | Michal Zobec Blog | Virtuální PC Blog | Můj profil na LinkedIn
    V případě, že se vám zdají moje příspěvky užitečné, označte je prosím.
    Pokud vám moje příspěvky poskytly řešení vašeho problému, označte je jako odpovědi.

    12. července 2013 9:31