CZ20021093A3 - Správa úloh v počítačovém prostředí - Google Patents

Správa úloh v počítačovém prostředí Download PDF

Info

Publication number
CZ20021093A3
CZ20021093A3 CZ20021093A CZ20021093A CZ20021093A3 CZ 20021093 A3 CZ20021093 A3 CZ 20021093A3 CZ 20021093 A CZ20021093 A CZ 20021093A CZ 20021093 A CZ20021093 A CZ 20021093A CZ 20021093 A3 CZ20021093 A3 CZ 20021093A3
Authority
CZ
Czechia
Prior art keywords
group
computer environment
resources
partitions
logical
Prior art date
Application number
CZ20021093A
Other languages
English (en)
Inventor
Jeffrey Kubala
Jeffrey Nick
Peter Yocom
Catherine Eilert
Original Assignee
International Business Machines Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/408,470 external-priority patent/US7051188B1/en
Priority claimed from US09/407,212 external-priority patent/US6587938B1/en
Priority claimed from US09/407,391 external-priority patent/US7007276B1/en
Application filed by International Business Machines Corporation filed Critical International Business Machines Corporation
Publication of CZ20021093A3 publication Critical patent/CZ20021093A3/cs

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Description

Oblast techniky
Vynález se týká obecně spravování úloh v počítačovém systému a podrobně spravování úloh v rozčleněném systému.
Dosavadní stav techniky
Logické členění na části umožňuje založit množství systémových obrazů v jediném fyzickém počítači nebo v procesorovém bloku (CPC, z angl. centrál processor complex) . Každý obraz systému může pracovat, jako by to byl samostatný počítačový systém. Tj. každou logickou oblast lze nezávisle resetovat, zavést do ní na začátku operační systém, jenž může být různý pro každou logickou oblast, a pracovat s ní pomocí různých programů a používat různá vstupní/výstupní (V/V) zařízení.
Příklady logicky členěných počítačových systémů jsou popsány např. v U.S. 4 564 903 vydaném 14.ledna 1986, v U.S. 4 843 541 vydaném 27. června 1989 a U.S. 5 564 040 vydaném 8.října 1996.
Komerční provedení logicky členěných systémů zahrnují např. IBM 3/390® s funkcí Processor Resource/Systems Manager™ (PR/SM™), která je popsána např. v publikaci od IBM Processor Resource/Systems Manager Planning Guide, GA227236-04, březen 1999.
2783682 (2783682_CZ.doc) • · • · · · φ φ
Důležitým aspektem logicky členěného systému je správa úloh běžících v oblastech tohoto systému. Např. u systémů S/390 se používají správci úloh ke spravování úloh v oblastech a mezi oblastmi. Správci úloh se snaží vyvažovat pracovní zatížení oblastí přesouváním úloh na fyzické zdroje systému. K tomu, aby se úloha přesunula, je však nutné se přesvědčit, že v místě, kam se přesouvá, jsou data potřebná pro přesunovanou úlohu. Tato potřeba často omezuje přesunutí úlohy. Je tudíž žádoucí dále zdokonalovat správu úloh v počítačových systémech.
Podstata vynálezu
V souladu s tímto poskytuje vynález způsob, systém a počítačový program, jak je definováno v přiložených nárocích.
V jednom provedení obsahuje způsob správu úloh nad dvěma a více oblastmi z množství oblastí počítačového prostředí, přičemž správa obsahuje dynamické přizpůsobování alokace sdílitelného zdroje alespoň jedné oblasti z daných dvou a více oblastí tak, že cíle úloh ze dvou a více oblastí se vyvažuj í.
V dalším provedení tohoto vynálezu obsahuje způsob správy úloh počítačového prostředí správu úloh nad dvěma a více oblastmi z množství oblastí počítačového prostředí, přičemž dané dvě a více oblastí se souběžně dělí o sdílitelný zdroj. Správa obsahuje dynamické přizpůsobování alokace sdílitelného zdroje alespoň jedné oblasti z daných dvou a více oblastí.
(2783682_CZ.doc) • · · · • · • ·
Upřednostňované provedení vynálezu umožňuje dynamické přerozdělení sdílitelných zdrojů nad logickými oblastmi pod řízením správce úloh. Tyto zdroje zahrnují např. CPU zdroje, logické procesorové zdroje, V/V zdroje, koprocesory, kanálové zdroje, sítové adaptéry a paměťové zdroje. Dynamické přizpůsobeni fyzických zdrojů podle cílů úloh je typicky zajišťováno prostřednictvím správce úloh (WLM, z angl. Workload Manager), sysplexu a integrace PR/SM bez potřeby paralelního sdílení sysplexových dat.
Navíc je v upřednostňovaném provedení poskytnuta WLM dynamická správa CPU zdrojů nad logickými oblastmi (LPARs, z angl. Logical Partitions) stejně jako správa dynamické kanálové cesty (CHPID) nad logickými oblastmi, na WLM založené řazení V/V priorit do front v kanálovém subsystému a WLM dynamická správa paměti nad logickými oblastmi. V jedné implementaci, skupiny logických oblastí umožňuji sdílení zdrojů pomocí alokace zdrojů založené na prioritách.
Jiné provedení tohoto vynálezu poskytuje způsob správy skupin oblastí počítačového prostředí včetně identifikace skupiny s množstvím oblastí počítačového prostředí. Způsob dále obsahuje určení sdílitelného zdroje, který má být přiřazen skupině, přičemž alespoň část sdílitelného zdroje je alokována množství oblastí ze skupiny.
Další provedení poskytuje způsob správy skupin oblastí počítačového prostředí, který obsahuje určování, že skupina počítačového prostředí byla pozměněna, přičemž skupina obsahuje množství oblastí počítačového prostředí; a dynamické přizpůsobování, v rámci skupiny, alokace zdroje dané skupiny odezvou na určování.
(2783682_CZ.doc) • · · · · ···· * • · · · · · ··* ···· · ·· ·♦ ·* «···
V upřednostňovaném provedení jsou vymezeny zdroje pro tyto skupiny, aby se stanovilo, které zdroje mají být přiřazeny ke konkrétní skupině, a aby se uplatnila alokace těchto zdrojů. Vymezení poskytuje ovladač ke zdrojům, které se mohou měnit, tak, aby WLM mohl provést patřičná rozhodnutí, co dělat dále. Vymezení dovoluje, aby podmnožiny zdrojů byly na počítači poskytnuty takovým způsobem, že počítač pochopí, co chce software udělat, a software se dozví konfiguraci počítače.
Další upřednostňované provedení vynálezu poskytuje způsob pro správu procesorových (CPU) zdrojů v počítačovém prostředí včetně určení, že se má přizpůsobit alokace CPU zdrojů oblasti počítačového prostředí; a dynamické přizpůsobování alokace nad oblastí a jinou oblastí počítačového prostředí.
Dynamické přizpůsobování se děje přednostně odezvou na cíle úloh alespoň dané oblasti a provádí se nad množstvím oblastí počítačového prostředí.
přizpůsobování oblastmi. WLM
V upřednostňovaném provedení rozděluje správce úloh CPU zdroje nad logickými oblastmi pomocí dynamického procesorových vah spojených s logickými např. rozezná, pokud má důležitá úloha zpoždění, protože váha oblasti, v níž je spuštěna, je příliš nízká. WLM může této úloze pomoci např. zvýšením váhy této oblasti a snížením váhy jiné oblasti, čímž se poskytne další CPU kapacita pro důležitou úlohu. To umožňuje, aby se dynamické CPU zdroje přesouvaly na potřebné oblasti s tím, jak se mění požadavky úloh.
(2783682_CZ.doc) • · · · · · • ·
Tento vynález dále poskytuje počítačové programy pro implementaci výše uvedených způsobů. Takové počítačové programy obecně obsahují počítačem spustitelné instrukce, které jsou zakódovány na počítačem použitelných médiích či na počítačem čitelném programovém paměťovém zařízení, a mohou být obsaženy jako část počítačového systému nebo prodávány odděleně (eventuálně dodáním prostřednictvím sítě).
Tento vynález také poskytuje systémy odpovídající výše uvedeným způsobům, typicky tvořené spojením počítačového programu pro implementaci způsobu s vhodným hardwarem.
Lze ocenit, že takové počítačové programy a systémy budou mít prospěch ze stejných upřednostňovaných znaků jako způsoby vynálezu.
Přehled obrázků na výkresech
Vynález bude blíže vysvětlen prostřednictvím konkrétních příkladů provedení znázorněných na výkresech, na kterých představuje obr. la obr. lb obr. 2 obr. 3 obr. 4a-4b jeden příklad počítačového prostředí další provedení počítačového prostředí dodatečné součásti počítačového prostředí jeden příklad skupin logických oblastí jeden příklad logiky spojené s oblastí, která (2783682_CZ.doc)
9 9 ·· 9 ··· ···· · ·· ·· ·· ··«· vstupuje do skupiny obr. 5 jedno provedení logiky spojené s vyjmutím oblasti ze skupiny obr. 6 jedno provedení logiky spojené s určováním, zda lze váhu oblasti zvýšit, aby se pomohlo obslužné třídě příjemce v oblasti obr. 7 jedno provedení logiky spojené s dynamickým přizpůsobováním konfigurace logických procesorů obr. 8 jedno provedení kanálového subsystému obr. 9 jedno provedení logiky spojené s výběrem V/V operace ke zpracování obr. 10 jedno provedení logiky spojené s určováním, zda se má přizpůsobit V/V konfigurace obr. 11 jedno provedení logiky spojené se sběrem dat na obr. 10 obr. 12 jedno provedení logiky spojení s kontrolou vyváženosti na obr. 10 obr. 13a-13b jedno provedení logiky spojené s korekcí nevyváženosti V/V operace obr. 14 jedno provedení logiky spojené s určováním zasažených subsystémů obr. 15 jedno provedení logiky spojené s nastavováním (2783682_CZ.doc)
0· 0000
00 00 0 0 0 0 0 explicitního cíle V/V rychlosti obr. 16a-22c různé příklady V/V konfigurací používaných při určování entropie
Příklady provedení vynálezu
Jsou poskytnuty funkce pro správu úloh, které umožňují dynamické přizpůsobování alokace zdrojů počítačového prostředí, aby se úlohy tohoto prostředí vyvážily. V jednom příkladu obsahuje počítačové prostředí množství logických oblastí a úlohy jsou spravovány nad dvěma a více oblastmi.
S ohledem na obr. Ia je popsáno jedno provedení počítačového prostředí používající funkce správy úloh. Počítačové prostředí 100 je založeno např. na architektuře Enterprise Systems Architecture (ESA)/390 nabízené společností International Business Machines Corporation, Armonk, New York. Architektura ESA/390 je popsána v IBM publikaci nazvané „Enterprise Systems Architecture/390 Principles Of Operation, IBM Publication No. SA22-7201-04, červen 1997. Příkladem počítačového prostředí založeného na ESA/390 je 9672 Parallel Enterprise Server nabízený společností International Business Machines Corporation.
Počítačové prostředí 100 obsahuje např. procesorový blok (CPC) 102, který zahrnuje jeden nebo více procesorů 106 (např. P1-P4), jednu nebo více oblastí 108 (např. logické oblasti L01-L04) a alespoň jednoho správce 110 logických oblastí, každý z výše uvedených je popsán níže.
Procesory 106 jsou fyzické procesorové zdroje, které (2783682_CZ.doc)
9999 • 9 ··· · • 9 99
9 9 9 • 9 9 9 9 9 9
99 99 9999 jsou alokovány logickým oblastem. Konkrétně každá logická oblast 108 má jeden nebo více procesorů (pro zřetelnost nejsou zobrazeny odděleně), z nichž každý představuje všechny nebo sdílení fyzických procesorů 106 alokovaných oblasti. Logické procesory konkrétní oblasti 108 mohou být buďto vyhrazeny oblasti (takže základní zdroj procesorů 106 je vyhrazen pro tuto oblast) nebo sdílené s jinou oblastí (takže základní zdroj procesorů je potenciálně dostupný jiné oblasti).
V zobrazeném konkrétním příkladě funguje každá z logických oblastí LO1-LO4 jako samostatný systém mající rezidentní operační systém 112 (který se může pro každou logickou oblast lišit) a jednu či více aplikací 114. V jednom provedení je operační systém 112 operačním systémem OS/390™ nebo MVS/ESA™ nabízeným společností International Business Machines Corporation.
Navíc každý operační systém (nebo jeho součást) obsahuje správce 116 úloh pro správu úloh v oblasti a mezi oblastmi. Jedním příkladem správce úloh je WLM nabízený společností International Business Machines Corporation. WLM je popsán např. v U.S. 5 473 773 vydaném 5.prosince 1995 a v U.S. 5 675 739 vydaném 7.října 1997.
Logické oblasti 108 jsou spravovány správcem 110 logických oblastí, který je implementován mikrokódem běžícím na procesorech 106. Každá z logických oblastí 108 (LO1-L04) a správce 110 logických oblastí obsahují jeden či více programů uložených v příslušných částech centrální paměti souvisejících s procesory. Jedním příkladem správce 110 logických oblastí je PR/SM.
(2783682_CZ.doc) • Φ φφφφ φφ φφφφ φφ φφ • φ φφ φ φφφφ φ φ φφφφφφφ ··· φ φφ φφ φφ φφφφ
V dalším provedení počítačového prostředí jsou dva či více procesorových bloků navzájem propojeny, aby vytvořily sysplex, jak je znázorněno na obr. lb. Příkladem je procesorový blok 102 (CPC) spojený s jedním či více jiných CPC 120 prostřednictvím např. propojovací soustavy 122.
V zobrazeném příkladu obsahuje CPC 120 množství logických oblastí 124 (např. LO1-LO3), které jsou spravovány správcem 126 logických oblastí. Jedna či více logických oblastí obsahuje operační systém, který může mít správce úloh a jeden či více aplikačních programů (pro zřetelnost v tomto příkladě nezobrazených). Navíc obsahuje CPC 120 množství procesorů 128 (např. P1-P3), jejichž zdroje jsou alokovány mezi množství logických oblastí. Zdroje jsou konkrétně alokovány mezi jeden či více logických procesorů 130 každé oblasti. (V jiných provedeních může každý CPC mít jednu či více logických oblastí a jeden či více procesorů.)
Propojovací soustava 122 (též známá jako procesor strukturované vnější paměti (SES, z angl. structured external storage) ) obsahuje paměť, dostupnou procesorovým blokům a provádí operace, které jsou požadovány programy v CPC blocích. Propojovací soustava se používá ke sdílení informací o stavu využívaných při provádění rozhodnutí o přerozdělení sdílených zdrojů. (V jednom provedení je každý procesorový blok připojen k množství propojovacích soustav.) Aspekty činnosti propojovací soustavy jsou podrobně popsány v takových manuálech jako je Elko et al. , U.S. 5 317 739 vydaný 31.května 1994; U.S. 5 561 809 vydaný 1.října 1996; U.S. 5 706 432 vydaný 6.ledna 1998; a v patentech a aplikacích zmíněných tamtéž.
V jednom provedení je jeden či více procesorů připojeno (2783682_CZ.doc) φφ φφφφ φφ ···· • · φφφ φ φ · φφφ • · · · φ φ φ • · φ φ · φ φφφφ φ φφ φφ alespoň na jeden kanálový subsystém, který se používá při komunikaci s V/V zařízeními. Např. procesor 200 (obr. 2) je připojen k hlavní paměti 202 a alespoň jednomu kanálovému subsystému 204. Kanálový subsystém 204 je dále připojen k jedné či více řídících jednotek 206. Řídící jednotky jsou pak připojeny k jednomu či více V/V zařízením 208.
Kanálový subsystém řídí tok informací mezi vstupními/výstupními zařízeními a hlavní pamětí. Zproščuje procesory úlohy komunikace přímo se vstupními/výstupními zařízeními a dovoluje, aby se zpracování dat provádělo souběžně se zpracováním vstupu/výstupu. Kanálový subsystém používá jednu či více kanálových cest 214 jako komunikační spojení při správě toku informací směrem k nebo od vstupních/výstupních zařízení 208.
Každá kanálová cesta 214 obsahuje např. kanál 210 kanálového subsystému 204, řídící jednotku 206 a spojení 212 mezi kanálem a řídící jednotkou. V jiných provedeních může mít kanálová cesta několik kanálů, řídících jednotek anebo spojení. Dále pak v jiném příkladu je také možné mít jeden či více dynamických přepínačů jako součást kanálové cesty. Dynamický přepínač je připojen na kanál a řídící jednotku a zajištuje funkci fyzického propojení libovolných dvou spojení, které jsou připojeny k přepínači. Další podrobnosti ohledně kanálových subsystémů jsou popsány v U.S. 5 526 484 vydaném 11.června 1996.
V upřednostňovaném provedení tohoto vynálezu jsou různé fyzické zdroje dynamicky přerozdělovány nad logickými oblastmi počítačového prostředí pod řízením jednoho či více správců úloh. Toto dynamické přerozdělování je transparentní pro aplikační subsystémy. Fyzické zdroje, které mají být ·« ΦΦ φ φ · Φ φ Φ * φ φ Φ φφφ φ · φφφφ (2783682_CZ.doc)
- 11 CPU zdroj e, koprocesory, a· ·**» ·* »· » a a i • · a ♦ a · * • · · a aaa «· a· aa aa » « přerozděleny, obsahují například procesorové zdroje, V/V zdroje, zdroje, síťové adaptéry a paměťové zdroje. V jednom příkladě je koprocesor mikroprocesorem (jiným než CPU) v CPC, který slouží k určité funkci. Příklady koprocesorů obsahují např. kanálové subsystémy, karty síťových adaptérů a šifrovací koprocesory. Výše uvedené fyzické zdroje jsou pouze navrženy jako příklady; lze též přerozdělovat jiné sdílitelné zdroje.
logické kanálové
Aby se ulehčilo dynamickému přerozdělování zdrojů, jsou v jednom provedení logické oblasti seskupeny dohromady, aby se zdroje mezi oblastmi skupiny sdílely. (V jednom příkladu obsahuje jedna či více skupin více oblastí, avšak méně než všechny oblasti počítačového prostředí.) Konkrétné každá skupina obsahuje např. jeden či více obrazů operačního systému spuštěné v nezávislých doménách počítače, které jsou spravovány společnou funkcí správce úloh pro přerozdělení úloh a zdrojů. V jednom příkladě jsou tyto domény logickými oblastmi spuštěnými v logicky rozděleném módu a operační systémy jsou OS/390 spuštěné v logických oblastech. Logické oblasti skupiny mohou být součástmi oblastí systému (např. CPC) či sysplexu, celým systémem či sysplexem nebo to mohou být oblasti různých sysplexu (např. na jednom CPC) či systémů.
Jedno provedení dvou skupin (neboli clusterů) logických oblastí procesorového bloku je znázorněno na obr. 3. Jak je zobrazeno, je zde Skupina A 300 logických oblastí a Skupina B 302 logických oblastí, z nichž každá obsahuje jednu či více logických oblastí. Seskupování logických oblastí umožňuje sdílení zdrojů mezi oblastmi skupiny pomocí alokace zdrojů (např. alokace zdrojů založená na prioritách).
(2783682_CZ.doc) •· ··♦·
Zdroje, jež mají být sdíleny, zahrnují například CPU zdroje, V/V zdroje a paměť; stejně jako ko- procesory či jiné sdílítělně zdroje, které může počítač poskytnout. Ve skutečnosti lze definovat několik skupin logických oblastí tak, aby pracovaly souběžně na jednom počítači. Aby se dala každá skupina logických oblastí efektivně spravovat, jsou zdroje, jež tvoří konkrétní skupinu logických oblastí, efektivně vymezeny této skupině.
Vymezení obsahuje identifikaci, které zdroje se dají každé skupině alokovat. Konkrétně vymezení definuje, které zdroje jsou skupině vyhrazeny a mohou být pro skupinu spravovány. Logické oblasti, které tvoří skupinu logických oblastí, si lze představit jako zásobník zdrojů. Tyto zásobníky existují v mezích celkové sady zdrojů dostupných logickým oblastem. V jednom příkladě je to sada zdrojů přístupných na konkrétním CPC.
Logickým oblastem, které tvoří konkrétní skupinu logických oblastí (např. Skupinu A logických oblastí), je přiřazena určitá část z veškerých sdílitelných zdrojů. Při sdílených CPU zdrojích je logickým oblastem, které jsou obsaženy ve Skupině A logických oblastí, přiřazena určitá část celkových procesorových zdrojů procesorového bloku. Tyto zdroje jsou sdíleny logickými oblastmi v konkrétní skupině stejně tak potenciálně logickými oblastmi jiných skupin logických oblastí a logickými oblastmi neobsaženými v žádných skupinách logických oblasti. Správce úloh, který se snaží vykonat rozhodnutí o přesunu zdrojů ve skupině (např. z jedné oblasti ve skupině logických oblastí do jiné oblasti ve skupině), tedy musí vědět o zdrojích, které tvoří skupinu, stejně jako musí vědět o tom, co obsahuje větší zásobník (např. CPC) . K porozuměni zákazníkem definovaným (2783682_CZ.doc) • ti * ti • tititi zásobníkům, jako je ten uvedený výše, by měla postačovat zpětná vazba rozměru (např. informace o stavu v propojovací soustavě) používaná k provádění rozhodnutí o správě zdrojů úloh.
Jakmile je ustaveno toto porozumění, jsou typicky provedeny správcem úloh řízené změny alokací zdrojů v logických oblastech dané skupiny takových způsobem, který zachovává konstantní velikost zásobníku (tj. zdrojů alokovaných skupině logických oblastí). Předpokládejme například, že zdroj ke spravování je CPU zdrojem, a dále předpokládejme, že každé logické oblasti je přiřazena váha CPU zpracování, která označuje prioritu. Pro spravování poměrných CPU vah, prostřednictvím např. správce úloh, musí součet poměrných vah pro logické oblasti v dané skupině zůstat před a po řízené změně konstantní. To udržuje zákazníkem specifikovanou alokaci zdrojů skupinám a dalším logickým oblastem přítomným v počítači.
Nehledě na výše uvedené, v některých případech může být žádoucí a možné, aby skupina oblastí využívala zdroje větší než je definovaný zásobník, pokud tyto zdroje nejsou používány jejich určenými vlastníky. Jakmile se však vyskytne kolize ohledně zdrojů, jsou zdroje spravovány správcem logických oblastí (LPAR) podle definovaných velikostí zásobníků (v tomto příkladu např. zpracováním vah) . Mohou však existovat jiné případy, kdy by nemělo být dovoleno skupině roztáhnout se za hranice jejího zásobníku. Toho je také možné docílit vymezováním. Jiné zdroje může být nutné plně vymezit pro jedinou skupinu, abychom obdrželi přesný obrázek o využití zdrojů. Omezování tímto způsobem zabraňuje logickým oblastem vně dané skupiny přistupovat k danému zdroj i.
(2783682_CZ.doc) • · · · · · · · · · • · » · · · · · · ···· · ·· ·· ·· ···4
Navíc k výše uvedenému je také věnována pozornost efektu vnějších změn na dostupnost zdrojů ve skupině logických oblastí. Uživatel může například změnit alokaci zdrojů pomocí určitých externích prostředků (ne pod řízením správce úloh) . To se může stát následkem změn v aktuálních úlohách, které jsou v počítači, nebo posunem povinnostních priorit mezi skupinami anebo logickými oblastmi. Pokud jsou provedeny tyto změny, musí se o těchto změnách dovědět správce úloh a tyto změny se musí racionálně roztřídit. Změny mohou nastat, když je logická oblast přidávána či odebírána ze skupiny; když je přidávána či odebírána nějaká jiná logická oblast vně skupiny; nebo zkrátka když je provedena změna váhy zpracování externím způsobem. Pokud se provádějí tyto vnější změny, může se změnit velikost zásobníku a správce úloh je nyní správcem tohoto zásobníku s novou velikostí.
Pokud se zdroje přisouzené určité logické oblasti skupiny změní zvenku, může být nutné přerozdělení zdrojů ve skupině. Pokud se například logická oblast odstraňuje ze skupiny, odstraní se váha zpracování spojená s touto logickou oblastí. Pokud je současná váha, přidělená pro danou logickou oblast správcem úloh, větší než je váha odstraňované logické oblasti (tj . váha zpracování přiřazená logické oblasti původně), přičte se rozdíl vah k ostatním logickým oblastem ve skupině. To se provede například v poměru k existujícímu rozdělení vah v ostatních logických oblastech ve skupině. Pokud je současná váha, přidělená pro danou logickou oblast správcem úloh, menší než původní váha logické oblasti, rozdíl vah se odečte od ostatních logických oblastí ve skupině. Jako tentýž příklad, i toto se provede v poměru k přiřazením vah ostatním logickým oblastem.
(2783682_CZ.doc) • · · · « · • · · · • β *· • · · · · 0 9 9 9
0 0 0 9 0 9 • · ···· · · » • · · · · · 9 9 9 9 9 9 9 9 9
Jak je popsáno výše, skupina je vymezena, aby obdržela ovladač ke zdrojům, které jsou skupině přiřazeny, a ke zdrojům, které se mohou měnit, takže správce úloh může provést patřičná rozhodnutí, co udělat dále. Vymezení identifikuje skupiny a zpětně poskytuje programu informace, kterým program rozumí. Pokud je skupina modifikována, zdroje jsou dynamicky přizpůsobeny, aby vyhověly modifikaci.
V jednom provedení mohou existovat samostatné skupiny (clustery) pro každý zdroj. Například Skupina A logických oblastí může být pro CPU zdroje, zatímco Skupina B logických oblastí může být pro V/V zdroje. V jiných provedeních je však také možné, aby jedna skupina logických oblastí byla pro podmnožinu nebo všechny zdroje.
Pro zavedení vymezení LPAR skupin se v jednom příkladu logické oblasti identifikují jedné či více skupinám oblastí.
S ohledem na obr. 4a-4b je popsáno jedno provedení logiky související se vstupem do skupiny. Např. ke vstupu do skupiny logických oblastí označí v kroku 400 operační systém (např. OS/390), spuštěný v logické oblasti, LPAR správci, součástí které LPAR skupiny má logická oblast být. Jako se například používá instrukce k předání názvu LPAR skupiny LPAR správci. Operační systém specifikuje název pro každý typ zdroje, který má být spravován v LPAR skupinách. Pokud tedy existují další zdroje, při dotazu 402, pak se specifikují další názvy. Například je dán skupinový název pro CPU zdroje a jiný název je dán pro V/V zdroje. Pokud je to žádoucí, lze specifikovat stejný název LPAR skupiny pro každý typ zdrojů.
Tato deklarace systému OS/390 buďto zavádí na počítači (2783682_CZ.doc) : .· :: : :· ί φ · · · · · · · a • · · · · · ··· ···· · ♦· *· »· ···· novou LPAR skupinu (pokud je logická oblast první logickou oblastí, která má používat daný název) nebo způsobí, že tato logická oblast vstoupí do existující LPAR skupiny se stejným názvem pro daný typ zdroje. Jakmile je například specifikován název skupiny v kroku 404 (obr. 4b), určí se v dotazu 406, zda je to nový název. Pokud ano, vytvoří se nová skupina v kroku 408. Jinak nastane začlenění do existující skupiny v kroku 410. Potom jsou skupině v kroku 412 vymezeny zdroje.
Konkrétně zdroje skupinového typu, které jsou svázané s LPAR skupinou, jsou nyní zpřístupněny pro logickou oblast k využívání, pokud a když WLM spuštěný v LPAR skupině určí, že by se tak mělo stát. Zdroje určitého typu pro LPAR skupinu, které vyžadují vymezení, zahrnují alespoň dvě varianty: aditivní zdroje a fixní zdroje.
Aditivní zdroje: V některých případech vstup do
LPAR skupiny zákonitě přidá zdroje k LPAR skupině, do níž logická oblast právě vstoupila. Příkladem toho je váha CPU zpracování, která je např. zákazníkem přidělena logické oblasti na hardwarové konzoli. Když je logická oblast aktivována, současná (používaná) váha zpracování logické oblasti se inicializuje od této zákazníkem přidělené váhy. Když logická oblast vstoupí do LPAR skupiny pro CPU zdroje, zákazníkem přidělená váha zpracování pro tuto logickou oblast se stane součástí celkové váhy zpracování využitelné ve skupině, a lze ji tedy WLM správcem v LPAR skupině znovu přiřadit. Logická oblast, která právě vstoupila do LPAR skupiny, má nyní možnost využívat větší sadu zdrojů LPAR skupiny, k nimž právě přispěla.
(2783682_CZ.doc)
Fixní zdroje: V některých případech je předdefinována množina zdrojů tak, že patří určité LPAR skupině. Příkladem toho jsou řízené (plovoucí) kanálové cesty. Řízená kanálová cesta je kanálová cesta, jejíž zdroje lze znovu přiřadit, aby se pomohlo dosáhnout cílů úlohy. Množina řízených kanálových cest pro použití konkrétní LPAR skupinou je na začátku definována pomocí definičního procesu V/V konfigurace, který spojí kanálové cesty (CHPID, z angl. channel path ID) s LPAR skupinou. Když logická oblast vstoupí do této LPAR skupiny, je jí umožněno přistupovat k této množině kanálových cest. Samotná logická oblast nepřispěla ničím do tohoto souboru zdrojů. (Tento soubor zdrojů lze stále změnit dynamicky, avšak smyslem je to, že zdroje nepřicházejí a neodcházejí s tím, jak logické oblasti vstupují a opouštějí LPAR skupinu.)
Vymezení LPAR lze také provést jinak pro zdroje v závislosti na typu zdroje.
Aditivní zdroje: Operační systém v LPAR skupině by měl být schopen dotazovat se celé množiny zdrojů tohoto typu pro LPAR skupinu. Toho je, jakožto příklad, pro váhy CPU zpracování dosaženo pomocí instrukce. Operační systém zjistí celou množinu tohoto typu zdroje v LPAR skupině, alokaci zdrojů logickým oblastem ve skupině a celkovou velikost souboru zdrojů dostupného na tomto počítači. Všechny tyto složky se použijí ke zjištění, kolik ze všech fyzických zdrojů má být alokováno logické oblasti. Operační systém poté aktualizuje alokace logickým oblastem v LPAR skupině, aby znovu přiřadil zdroje ve skupině. Operačnímu systému v příkladu není dovoleno měnit celkové množství zdrojů (2783682_CZ.doc) alokované LPAR skupině. To provede LPAR správce tak, že se ujistí, že všechny části LPAR skupiny jsou vyřízeny v aktualizaci a žádné logické oblasti vně LPAR skupiny nemají zasaženy své zdroje.
Fixní zdroje: Operační systém v LPAR skupině se dotazuje množiny zdrojů, která je spojená se svou LPAR skupinou pro tento typ zdroje. Například u řízených kanálových cest lze pomocí instrukce získat od LPAR správce seznam řízených kanálových cest, které definovány pro určitou LPAR skupinu.
zacloní tyto zdroje, aby zajistil, pouze správnou LPAR skupinou. Pro řízené kanály to znamená pouze umožnění, aby řízená kanálová cesta byla konfigurována jako online pro logickou oblast, která deklarovala název LPAR skupiny, který odpovídá názvu definovanému pro řízenou kanálovou cestu.
jsou
LPAR správce také že budou využity
Pokud je logická oblast,která je součástí LPAR skupiny systémově resetována, znovu zavedena (prostřednictvím IPL) či deaktivována, odstraní se jakýkoli vztah, který logická oblast měla k jedné či více LPAR skupinám. S ohledem na obr. 5 je popsáno jedno provedení logiky spojené s odstraňováním logické oblasti ze skupiny. Jakožto součást resetování odstraní v kroku 500 správce logických oblastí z logických oblastí deklarované názvy LPAR skupin. Poté je dotazem 502 provedena jedna či více akcí k dokončení dealokace zdrojů LPAR skupiny pro logickou oblast v závislosti na zdroji.
Pokud je zdroj aditivním zdrojem, pak nastane následující: zdroje jako tento, které byly přidány do LPAR skupiny, když logická oblast vstupovala do LPAR skupiny, se (2783682_CZ.doc) « · · · ««·· · • · · · · · · · · ···· · ·· ·· ···· odstraní z LPAR skupiny v kroku 504. To může zahrnovat přizpůsobení současné alokace tohoto typu zdroje ostatním členům LPAR skupiny. Například v případě vah zpracování je nyní z vymezení LPAR skupiny odstraněna původní váha zpracování pro logickou oblast, která opouští skupinu. Pokud WLM pozměnil současnou váhu zpracování pro logickou oblast, je potřeba provést přizpůsobení. Pokud je současná váha zpracování dané logické oblasti větší než její původní váha zpracování, rozdíl mezi nimi se přerozdělí zbývajícím členům LPAR skupiny v poměru k jejich současným váhám zpracování. Pokud je současná váha zpracování dané logické oblasti menší než její původní váha zpracování, rozdíl mezi nimi se odečte od zbývajících členů LPAR skupiny v poměru k jejich současným váhám zpracování. Výsledek těchto přizpůsobení znovu zavádí zásobník vah zpracování pro výslednou LPAR skupinu.
Na druhé straně pokud je zdroj fixním zdrojem, pak nastane následující: zdroje jako tyto se zkrátka v kroku 506 odstraní z konfigurace logické oblasti, která je resetována. Například pro řízené kanálové cesty jsou kanálové cesty odstraněny z konfigurace logické oblasti, která je resetována. Toto opět znovu ustanovuje, že ke zdroji LPAR skupiny mají přístup pouze členové LPAR skupiny.
Stojí za to poznamenat, že některé zdroje řízené WLM v prostředí LPAR skupiny nemusí vyžadovat vymezení skupin. Jedním příkladem takového zdroje je počet logických procesorů (P) online pro danou logickou oblast. Efektivní chování určité logické oblasti v LPAR skupině lze významně ovlivnit počtem logických procesorů, které jsou online pro logickou oblast. Počet logických procesorů, které může mít logická oblast definovány anebo jsou online, je (2783682_CZ.doc) • · · · · · · φ · · · · · · ♦ · · • · · φ · · · · • φ · · · φ · · · · · · charakteristikou logické oblasti, ať je nebo není v LPAR skupině, takže tento zdroj se ve skutečnosti nestane součástí většího souboru zdrojů. Jeho smyslem v LPAR skupině je však to, že může měnit, jaký typ úloh lze efektivně spouštět v jednom členovi LPAR skupiny oproti jinému.
V jednom příkladu je zdroj, který má být sdílen mezi množstvím logických oblastí, CPU zdrojem. Správce úloh systému OS/390 přerozdělí CPU zdroje nad logickými oblastmi tím, že dynamicky přizpůsobí jednu či více poměrných procesorových vah spojených s logickými oblastmi. WLM pozná, pokud se důležitá úloha zpožďuje kvůli tomu, že váha oblasti, v níž je spuštěna, je příliš nízká. WLM může této úloze pomoci zvýšením váhy této oblasti a snížením váhy jiné oblasti, čímž důležité úloze poskytne dodatečnou CPU kapacitu. Jak se mění požadavky úloh, CPU zdroje se přemísťují do oblastí, kde jsou potřeba.
V jednom provedení je vymezení WLM správy vah logických například zachovává
Zachováním oblastí skupinou přizpůsobuje váhy konstantní součet logických oblastí. WLM logických oblastí, ale vah oblastí ve skupině, konstantního součtu se udržuje u celkových CPU zdrojů alokovaných skupině stejný poměr k ostatním nezávislým skupinám na stejném fyzickém počítači. Proto pokud WLM zvýší váhu jedné oblasti, sníží váhu jiné oblasti ve stejné skupině.
Správa vah logických oblastí je rozšířením na cíl orientovaných technik WLM alokace zdrojů; technik, které jsou popsány např. v U.S. 5 473 773 vydaném 5.prosince 1195 a v U.S. 5 675 739 vydaném 7.října 1997.
(2783682_CZ.doc)
Jak je popsáno v těchto patentech, WLM řídí alokaci CPU zdrojů v logické oblasti přizpůsobováním CPU priorit výběru. CPU priority výběru jsou přiděleny k práci na úrovni obslužné třídy. Existují však různé situace, v nichž přizpůsobení priorit výběru obslužné třídě nepomůže. Například:
1) Obslužná třída sama již má nejvyšší CPU prioritu výběru povolenou pro nesystémovou práci.
2) Změna CPU priorit výběru na výpomoc obslužné třídě by měla příliš veliký negativní dopad na jiné obslužné třídy, které mají rovnocenný či vyšší význam.
Pokud tedy WLM shledá, že obslužná třída neplní své cíle kvůli zpoždění CPU, čemuž nelze pomoci přizpůsobením CPU priorit, WLM zváží přizpůsobení váhy oblasti spojené se selhávající obslužnou třídou.
Obslužná třída, jíž WLM zvažuje alokovat přídavné zdroje, se nazývá obslužná třída příjemce. Pokud WLM shledal, že obslužná třída příjemce neplní své úkoly kvůli zpoždění CPU v dané oblasti, čemuž nelze pomoci z jednoho z výše uvedených důvodů, WLM zváží zvýšení váhy dané oblasti. Jedno provedení logiky následované tím, že WLM určí, zda lze zvýšit váhu oblasti pro výpomoc obslužné třídě příjemce, je popsáno dále s ohledem na obr. 6:
1. Projekce účinku zvýšení váhy oblasti na třídu příjemce v kroku 600. Zvýšení váhy oblasti zvýší CPU kapacitu dané oblasti. Jelikož se předpokládá, že požadavek CPU na práci ve třídě příjemce je (2783682_CZ.doc) • 000 • · · · • ·
’ · 0 · · 0 · · · 0··· · ·· 00 0· ·0·0 konstantní, zvýšení CPU kapacity dané oblasti sníží procento této kapacity, kterou obslužná třída příjemce požaduje. Projekce prospěchu pro obslužnou třídu příjemce je založena na tomto poklesu procenta dostupné CPU kapacity jak obslužné třídy příjemce, tak jiné činnosti na žádost systému.
2. Nalezení jiné oblasti ve skupině logických oblastí, aby byla kandidátem pro snížení své váhy v kroku 602. Tato oblast je známá jako kandidátní donorová oblast. Kandidátní donorová oblast je vybrána např. pomocí hledání oblasti, kde je pravděpodobné, že snížením váhy oblasti bude postižena nejméně důležitá činnost.
3. Projekce, v kroku 604, účinku snížení váhy kandidátní donorové oblasti na všechny obslužné třídy, zatímco úloha probíhá na této oblasti. Snížení váhy kandidátní donorové oblasti sníží CPU kapacitu kandidátní donorové oblasti. Tento pokles CPU kapacity znamená, že zatímco činnost probíhá na kandidátovi donoru, zvýší se požadavek CPU na obslužné třídy jakožto procento kapacity kandidáta donoru. Představa negativního účinku snížení váhy kandidáta donoru je založena na tomto vzrůstu procenta dostupné CPU kapacity, kterou tyto obslužné třídy požaduj í.
4. Určení dotazem 606, zda tato změna ve váze má sítovou hodnotu. Tj ., prospěch pro obslužnou třídu příjemce převyšuje negativní dopad na úlohy v kandidátní donorové oblasti na základě cílů a významu zapojených obslužných tříd.
(2783682_CZ.doc)
9999
9 9 · 9 · · · · · • · · · 9 9 9 9 9 • ••9 9 99 99 99 9999
5. Realizace navržené změny vah oblastí v kroku 608, pokud přizpůsobení vah má síťovou hodnotu. Pokud nemá síťovou hodnotu, v dotazu 610 se určí, zda existuje více kandidátních donorových oblastí. Pokud ano, vybere se v kroku 612 jiná kandidátní donorová oblast a zpracování pokračuje v bodě 3 krokem 604. Pokud neexistují další kandidátní donorové oblasti, pak zpracování končí krokem 614.
Aby se umožnilo WLM, spuštěnému na jedné oblasti, provádět projekci účinku změny vah oblastí na činnost probíhající na jiné oblasti, má každá oblast přístup ke sdílené datové struktuře obsahující výkonová data o každé logické oblasti ve skupině. Tato výkonová data úrovně oblasti obsahují například:
• nároky CPU na činnost probíhající na oblasti pomocí obslužné třídy;
• jak dobře každá obslužná třída směřuje na oblasti ke svému cíli;
• využití CPU pomocí CPU priority výběru pro danou oblast.
V upřednostňovaném provedení tohoto vynálezu implementovaném v systému OS/390 je tato sdílená datová struktura vystavěna a udržována v propojovací soustavě. Lze však použít jiné přístupy datového sdílení k realizaci této datové struktury, jako je posílání zpráv nebo sdílení disku.
Výše je popsána schopnost dynamického přerozdělení CPU zdrojů počítačového prostředí. Zdroje jsou přerozdělovány (2783682_CZ.doc) ·· ···· ·· ·· • · to 9 9 · · ♦ · 9
9 · · · · · · γ · · · · · 9 · · · • β 9 9·· · 9 · •999 9 ♦ · 9* ·· ·9·9 nad logickými oblastmi podle jednoho příkladu dynamickým přizpůsobováním vah logických oblastí.
Kromě dynamického přizpůsobování CPU zdrojů lze dynamicky přizpůsobovat také zdroje logických procesorů.
Logická oblast je konfigurována s jedním či více logickými procesory, které jsou expedovány na fyzických procesorech v procesorových blocích, aby prováděly úlohy.
Aby bylo umožněno oblasti využívat jí přidělenou CPU kapacitu, musejí být k dané logické oblasti nakonfigurovány dostatečné logické procesory. Uvažujme např. případ Logické oblasti A spuštěné na CPC s deseti CPU. Pokud správce úloh přidělí Logické oblasti A 50% z CPC kapacity, potřebuje mít Logická oblast A k sobě nakonfigurováno alespoň pět logických procesorů. (Pět logických procesorů může být spuštěno na pěti CPU neboli 50% z CPC kapacity.) Pokud by Logické oblasti A bylo později přiděleno 95% z CPC kapacity, byla by Logická oblast A nakonfigurována s deseti procesory. Jelikož WLM může dynamicky přizpůsobovat kapacitu přidělenou Logické oblasti A se staticky definovanou konfigurací logických procesorů, je k Logické oblasti A nakonfigurováno deset logických procesorů, aby vyhověly všem možným přiřazením kapacity. Pokud by však bylo Logické oblasti A přiděleno např. pouze 20% z CPC kapacity, vyvstanou ze statické definice logických procesorů dva problémy: 1) Každému z deseti logických procesorů bude umožněno v průměru využívat fyzické CPU zdroje v míře 0,2 fyzické CPU kapacity (20% z deseti CPU děleno deseti logickými procesory dává 0,2 CPU na logický procesor). To může vážně omezit úlohy, jejichž výkon je hradlován jediným úkolem, jelikož tento jediný úkol bude schopen spustit pouze 0,2 z kapacity fyzického CPU - toto je často zmiňováno jako efekt motoru (2783682_CZ.doc) ·· ·· • · · · · «· ··#· s krátkou hřídelí; 2) Softwarová a hardwarová účinnost je významně snížena, pokud má spravovat deset logických procesorů, když jsou zapotřebí pouze dva logické procesory.
Aby se zaměřila na výše uvedené nedostatky, není konfigurace logické oblasti staticky definována, namísto toho je dynamicky přizpůsobována. V jednom příkladu je to WLM, který spravuje oblast a provádí dynamické přizpůsobení. WLM to může vykonávat pro každou logickou oblast počítačového prostředí (nebo uvnitř LPAR skupiny). S ohledem na obr. 7 je popsáno jedno provedení logiky spojené s dynamickým přizpůsobováním konfigurace logických procesorů.
Původně je v kroku 700 logická oblast nakonfigurována s minimálním počtem logických procesorů potřebných k tomu, aby jí bylo umožněno využívat kapacitu přidělenou logické oblasti správcem úloh (nebo aktuálně využívanou kapacitu, pokud je větší). Jakmile se při dotazu 702 změní přidělení kapacity logické oblasti (nebo využití kapacity), provede se v kroku 704 ohodnocení k určení toho, zda má být upraven počet logických procesorů nakonfigurovaných k logické oblasti. V jednom příkladu zůstává počet logických procesorů nakonfigurovaných k logické oblasti blízký počtu fyzických CPU potřebných k zajištění CPC kapacity přidělené (nebo využívané) logické oblasti. Tak každý logický procesor pracuje poblíž kapacity fyzického CPU a počet logických procesorů ke správě je minimalizován.
K provedení ohodnocení, zda se má změnit logická konfigurace, se v jednom příkladě používá v kroku 705 následující rovnice:
L=zaokr.dolů[max(W,U)xP+1,5] podléhá maximu z L=P, (2783682_CZ.doc) kde L=počet logických procesorů nakonfigurovaných k logické oblasti;
W=procento CPC kapacity přiřazené logické oblasti;
U=procento CPC kapacity právě využívané logickou oblastí; a P=počet fyzických CPU na bloku CPC.
L je vyhodnocováno správcem úloh na základě v té době aktuálních hodnot P, W a U například v pravidelných a častých intervalech (např. každých 10 sekund). Používají se prahy k určení, jestli má být aktuální hodnota L (L-act) pro logickou oblast zvýšena či snížena. Pokud je v dotazu 706 nově vypočtená hodnota L (L-calc) vyšší než současná hodnota L-act, pak se v kroku 708 L-act zvýší na L-calc. Jinak pokud je v dotazu 710 L-calc hodnotou o dvě či více nižší než Lact, pak se L-act v kroku 712 nastaví na L-calc minus jedna. Pokud je L-calc rovna L-act nebo pouze hodnotou o jedna menší než L-act, neprovede se pro logickou oblast v kroku 714 žádná změna hodnoty L-act. Použitím těchto prahů se vyhýbáme nepotřebným změnám L-act v důsledku malých fluktuaci úloh, zatímco se pořád reaguje na rychle se zvyšující nároky úloh na kapacitu.
Pro další znázornění uvažujme následující přiklad: Předpokládejme P=10, W=U=24%. Statická konfigurace logických procesorů by vyžadovala L(statická)=10 pro vypořádáni se s případem, kdyby W vzrostlo na více než 90%. Avšak v upřednostňovaném provedení tohoto vynálezu:
L(dynamická)=zaokr.dolů[max(0,24, 0,24x10+1.51=3. V tomto případě by tedy L(statická) omezovala jediný úkol na spuštění při 0,24 z fyzického CPU, zatímco L(dynamická) umožňuje jedinému úkolu spuštění při 0,80 z fyzického CPU, čímž poskytuje 233% vzrůst výkonu pro úlohy hradlované výkonem jediného úkolu. Navíc je významně zlepšena účinnost (2783682_CZ.doc)
4» · «<··
•· ··*· » ti · ti • · « í ti ti · · • · · · • · *· ti··· softwaru a hardwaru, jelikož jsou v tomto . příkladu spravovány pouze tři logické procesory místo deseti logických procesorů potřebných pro L(statickou).
Dalším sdílitelným zdrojem počítačového prostředí, který má být spravován, je asynchronní zdroj, jako je V/V zdroj. Konkrétně mají být spravovány V/V operace nebo žádosti v koprocesoru (např. kanálový subsystém). Tato správa obsahuje stanovení priorit pro V/V operace, takže V/V operace s vyšší prioritou jsou zpracovány rychleji anebo je V/V operacím s vyšší prioritou přidělena větší šířka pásma kanálu.
V moderních rozsáhlých multi-programových počítačových systémech vyvolání a spuštění dlouho běžících procesů, jako jsou V/V operace pro čtení, zápis a řízení připojených V/V zařízení, je typicky dosaženo použitím několika nezávisle pracujících počítačových prvků (viz obr. 8). Program spuštěný v procesoru 800 například může požadovat V/V operaci s připojeným zařízením 804; avšak skutečné vyvolání a spuštění V/V operace s připojeným zařízením provádí jeden či více nezávisle spouštějících procesorů pracujících společně, což se typicky nazývá kanálový subsystém 802. Obecně se používá metodika asynchronního zpracování V/V, aby se optimalizoval a efektivně využíval procesor pro jinou práci souběžně se spouštěním poměrně dlouho běžících V/V zařízení. Tj. aby se minimalizovala režie procesoru, doba zpracování a doba čekání procesoru, které by jinak byly nutné pro přístup a pro čtení/zápis na připojená V/V zařízení. Je navržena taková metodika, aby se dosáhlo maximálního překrývání či souběžnosti spouštění V/V operací se spouštěním ostatních procesorových úloh ve velkém multiprogramovém systému.
(2783682_CZ.doc) φ φ · φ φ φφφ φ φ φ φ φ φ φ φφφφ φ φφ ·· ·
V takovém systému asynchronního zpracování V/V zahajuje procesor spouštění programem požadovaně V/V operace použitím V/V instrukce, jako je instrukce START SUBCHANNEL pro S/390. Taková instrukce typicky odpovídá za:
1. Zařazení (přidáním) požadavku V/V operace do fronty V/V úloh kanálového subsystému; a
2. Signalizaci asynchronně spouštějícímu kanálovému subsystému, aby zpracoval frontu V/V úloh.
Hlavní procesor je následně uvolněn k provádění jiných úloh/instrukcí a není přímo zapojen do skutečného spouštění požadovaných V/V operací s V/V zařízením.
Vzhledem k 1) asynchronní povaze výše uvedeného procesu, 2) nezávislé činnosti hlavního procesoru a procesorů kanálového subsystému, 3) poměrně dlouhé spouštěcí době V/V operací ve srovnání se spouštěcí rychlostí hlavních procesorů a 4) skutečnosti, že některé nebo všechny zdroje kanálového subsystému, jako jsou kanálové cesty, jež spojují zařízení s kanálovým subsystémem, mohou být zaměstnány prováděním jiných operací v době, kdy je programem požadována V/V operace, je vysoce pravděpodobné, že ve frontách V/V úloh v kanálovém subsystému bude zařazeno několik V/V požadavků současně. Tj . instrukce START SUBCHANNEL je hlavními procesory spouštěna vyšší rychlostí, než je schopnost kanálového subsystému provádět požadované V/V operace, čímž je soustavně způsobena N-úrovňová hloubka front V/V úloh s čekajícími požadavky V/V operací.
Aby byly čekající V/V požadavky zpracovány, mikroprocesory, které tvoří kanálový subsystém, prohlížejí své příslušné fronty V/V úloh (viz obr. 8), vyřadí jeden či (2783682_CZ.doc) více V/V požadavků z těchto front a pokusí se přiřadit vyřazené V/V požadavky k jejich příslušným V/V zařízením. Iniciativa k této aktivitě závisí na mikroprocesorech a dotyčných frontách úloh v kanálovém subsystému. Například V/V procesor kanálového subsystému, který je v interakci s hlavním procesorem, může tento proces spouštět periodicky, když není zaměstnán prováděním jiné úlohy, jako výsledek jednoho či více signálů START SUBCHANNEL od hlavního procesoru nebo kombinací obou.
S ohledem na obr. 8 je popsán jeden příklad různých front úloh v kanálovém subsystému. Jak bylo uvedeno dříve, V/V požadavky jsou zařazeny do fronty 806 úloh V/V procesoru, např. instrukcí START SUBCHANNEL. V/V požadavky jsou poté vyřazeny z fronty V/V procesorových úloh V/V procesorem 808. Požadavky, které jsou vyřazeny z fronty V/V procesoru, jsou zařazeny V/V procesorem do fronty 810 úloh kanálového procesoru. Nato jsou tyto požadavky vyřazeny kanálovým procesorem 812 a zařazeny do fronty 814 úloh řídící jednotky. Kanálový procesor poté vyřadí z fronty úloh řídící jednotky požadavky, které mají být poslány prostřednictvím kanálové cesty řídící jednotce a nakonec k V/V zařízeni.
V současné době se v rodině systémů výrobku S/390 vyřazování z front kanálového subsystému a vyvolání pracovních procesů provádí na bázi „první zařazen, první vybrán (FIFO, z angl. First-In, First-Out). Tento proces je logicky nej snazší implementovat, je určen k optimalizaci výkonu a v minulosti byl přijatelnou strategií pro transfer úloh mezi různými prvky asynchronního zpracování, jestliže průměrná hloubka čekajících front úloh je poměrně malá a jestliže čekací doby V/V úloh zůstávají poměrně krátké (tj .
(2783682_CZ.doc) • 4 · 4 4 · 4 · · · 4 4·· · 4 4·· · · · · · · · • · « 4 4· · · · · že průměrný počet čekajících V/V požadavků v různých frontách V/V úloh nezpůsobuje závažné prodloužení celkové doby V/V odezvy na V/V operace spojené s kritickými programy s vysokou důležitostí anebo se zpracováním v reálném čase).
V operačních systémech, které zajišťují funkce stanovení priorit aplikací/programů, aby podpořily uživatelské požadavky na včasné zpracování kritické nebo časově závislé úlohy, se však strategie zpracování čekajících V/V požadavků metodou FIFO stává méně vhodnou, jelikož se zvyšuje průměrná hloubka FIFO front úloh. Například disky s paralelním přístupem používané společně s IBM Enterprise Storage Server zvyšují průměrnou hloubku front v kanálovém subsystému. To je typický důsledek skutečnosti, že V/V požadavky s nižší důležitosti či méně rozhodující dobou mohou stát ve FIFO frontách úloh před důležitějšími požadavky a tudíž být vyvolány před kritičtějšími V/V požadavky. Často méně kritická úloha provádí V/V, který svazuje zdroje na delší časové intervaly, což zvyšuje zpoždění, na nějž naráží důležitější úloha. To typicky ústí ve zvýšenou pravděpodobnost zpoždění pro důležitější V/V požadavky.
Vzrůst doby zpoždění, také nazývané doba V/V čekání (což může být buď celkové zpoždění v reálném čase nebo zpoždění v relativním čase ve srovnání s rychlostí hlavního procesoru), je často zapříčiněn tím, že kanálový subsystém a připojená zařízení nejsou schopny udržet takovou rychlost V/V spouštění, která nepostihuje včasné dokončení kritických V/V požadavků. (Jinak řečeno, nejsou schopny udržet spouštěcí dobu programů s vysokou důležitostí/kritickou dobou). Jak je uvedeno výše, pokud se používá metodika zpracování úloh FIFO, pravděpodobnost nepřijatelného (2783682_CZ.doc) • · · · • · · • ft · · · · ·· »· • ♦ · · ft · · · I* prodloužení celkově doby V/V odezvy na kritické V/V požadavky se obecně zvyšuje. Jak se zvyšuje rychlost a počet hlavních procesorů, tato pravděpodobnost zpoždění se dále zvětšuje větší rychlostí, než roste rychlost připojených V/V zařízení a dalších potřebných prvků kanálového subsystému, jako jsou kanálové cesty, k nimž jsou zařízení připojena. Nepoměr převládajícího tempa růstu rychlosti hlavního procesoru nad tempem růstu V/V rychlosti se dále zvyšuje v současných prostředích velkých systémů, což vede u kritických úloh ke stále větší pravděpodobnosti zpoždění ve frontách a větším dobám V/V odezvy (jak v reálném čase tak v relativním čase).
Aby se minimalizovala frekvence prodloužené doby V/V odezvy u V/V operací s vysokou důležitostí a kritickou dobou, definuje se, kvůli zpožděním ve frontách kanálového subsystému, jako příklad technika správy priorit pro zpracování jedné či více front čekajících V/V úloh kanálového subsystému.
Příklady implementace techniky zpracování priorit mezi dvěma nezávisle spouštějícími procesory či procesy obsahují následuj ící:
1. Procesor (nebo proces) zařazující do fronty přidá V/V požadavky do fronty V/V úloh kanálového subsystému (konkrétní fronta záleží na stavu zpracování) pomocí techniky řazení priorit na základě programově (např. WLM) specifikovaného čísla priority. Kanálový subsystém následně odebere z fronty první V/V požadavek s nejvyšší prioritou pomocí FIFO techniky; nebo (2783682__CZ.doc) * 9 · 99 9
2. Procesor (nebo proces) zařazující do fronty přidá V/V požadavky na konec fronty V/V úloh použitím techniky zařazování FIFO. Kanálový subsystém následně pomocí techniky prioritního výběru prohledá všechny prvky V/V požadavků ve frontě úloh a odstraní a zpracuje V/V požadavek s nejvyšším programově specifikovaným číslem priority.
Technika zařazování FIFO (technika č.2) vyžaduje méně instrukcí, a umožňuje tudíž hlavnímu procesoru rychleji dokončit rozvrhující proces V/V požadavků. Pro zařazování/vyřazování z fronty mezi různými mikroprocesory, které tvoří kanálový subsystém, závisí technika pro výběr typicky na tom, který ze zúčastněných procesorů je nejvíce omezen vzhledem k jeho kapacitě zpracování a časovým nárokům. Tj . pokud je nejvíce omezen zařazovací procesor, vybere se druhá technika. Pokud je nejvíce omezen vyřazovací procesor, vybere se typicky první technika.
Nezávisle na tom, která z těchto technik se uplatní, výsledkem je, že kanálový subsystém upřednostní vyvolání a spouštění čekajících V/V požadavků na základě metodiky stanovení priorit a nikoli na základě doby příchodu či metodiky FIFO.
Dále jsou v jednom provedení nezávisle na uplatněných technikách zařazování a výběru použita různá kritéria pro stanovení priorit anebo výběr požadavku ke zpracování. V jednom příkladu obsahují tato kritéria následující:
1. Výběr čekajících V/V požadavků na základě programově specifikovaného čísla priority, kde každé různé číslo odpovídá jedinečné úrovni priority. Například (2783682_CZ.doc) • · · · · · • Φ ··♦· se zajistí rozsah po sobě jdoucích jedinečných čísel a celkový rozsah čísel se bude rovnat nebo bude větší než celkový počet odlišných kategorií úloh, které vyžadují rozlišení priorit. Pokud například systém zajišťuje schopnost souběžně spouštět N různých operačních systémů, jak je např. možné u typického systému S/390, pak musí techniky priorit kanálového subsystému poskytovat N či více rozličných úrovní priority. Každá úroveň priority od nejnižší úrovně po nejvyšší a naopak bude reprezentována jedinečným číslem v rozsahu 0 až N-l.
2. Prioritní výběr čekajících V/V požadavků pomocí techniky, která rovněž zavádí „spravedlnost pro všechny zařazené požadavky nezávisle na jejich prioritě. Toto je typicky žádoucí, aby se minimalizovala pravděpodobnost, že požadavky s nižší prioritou nebudou zpracovány po dlouhé časové intervaly, což může nastat například důsledkem toho, že po dlouhý časový interval je kanálovému subsystému předáván nepoměrně větší počet požadavků s vyššími prioritami. Spravedlivý výběr lze v závislosti na dalších úvahách také aplikovat na čekající požadavky stejné priority. Například za účelem zajištění spravedlnosti pro čekající požadavky, které byly již vyřazeny z fronty, neúspěšně vyvolány a znovu zařazeny do fronty s požadavky se stejnou prioritou, které ještě nebyly vybrány. Takováto technika je popsána s ohledem na obr. 9. Tato technika uplatňuje jak prioritu tak spravedlnost pro množství různých kategorií čekajících požadavků.
(2783682_CZ.doc) ·· ··*·
3. Vnější uživatelské/operátorské ovládací prvky pro:
Globální priorit. vynucení povolení/zakázaní technik zpracování
Toto ovládání může být nutné pro FIFO zpracování čekajících žádostí, pokud techniky priorit nejsou nutné nebo nejsou schopné adekvátně vyhovět prostředí spouštění atypického programu.
U systémů, které zajišťují souběžné spouštění několika logických oblastí, vnější ovládání, které umožní uživateli specifikovat „implicitní hodnotu priority pro V/V požadavky spojené s danou logickou oblastí. Toho se používá, když operační systém spouštějící v logické oblasti není určen k tomu, aby specifikoval hodnotu priority pro své V/V požadavky, ale který by konkuroval j iným spouštějí v jiných přesto úspěšně systémům, které oblastech a specifikuj í.
které stanovení
V/V operačním logických priorit spouštění ovládání, z celkové kanálovým
U systémů, které zajišťují souběžné několika logických oblastí, vnější které umožní uživateli specifikovat, množiny hodnot poskytovaných subsystémem, podmnožinu minimálního a maximálního rozsahu hodnot priority pro každou logickou oblast. Toto ovládání se používá, když několik operačních systémů spouštějících v oddělených logických oblastech používá stanovování V/V priorit nezávisle a bez vědomí ostatních, kteří používají oblasti. Tj . vzít v úvahu odlišení (2783682_CZ.doc) a
♦ ♦ ···· aa ··· · aa požadavků vyvolaných každým, kdo používá oblast, na základě priorit.
Pro body 3.2 a 3.3 uvedené výše hlavní procesor, v jednom provedení, implicitně přidělí uživatelem specifikovanou implicitní hodnotu priority nebo uživatelem specifikovanou minimální/maximální povolenou prioritu pro program spouštějící v logické oblasti takovým způsobem, který je transparentní pro program pracující v oblasti. V systémech S/3 90 toho lze společně dosáhnout správcem logických oblastí (hypervisorem) a instrukcí hlavního procesoru START SUBCHANNEL.
Když program pracující v logické oblasti spustí START SUBCHANNEL, aby vyvolal V/V operaci, interpretační spuštění instrukce START SUBCHANNEL v hlavním procesoru implicitně získá z tabulky Popisu stavu (SD, z angl. State Description) Startu interpretačního spuštění (SIE, z angl. Start Interpretive Execution) jak implicitní číslo priority tak čísla minimální/maximální povolené priority. Tato tabulka je vytvořena a zavedena do hlavního procesoru hypervisorem logických oblastí, když tento spustí instrukci SIE, aby uvedl oblast do stavu spuštění. Interpretační spuštění START SUBCHANNEL pak používá implicitní a min./max. hodnoty priority z tabulky popisu stavu SIE, aby do V/V požadavku implicitně nastavil přiměřenou hodnotu priority, aniž by zapojil program pracující v logické oblasti.
Pokud není programem spouštějícím v logické oblasti specifikována hodnota priority, interpretace START SUBCHANNEL přidělí V/V požadavku uživatelem definovanou implicitní hodnotu priority. Pokud program spouštějící v logické oblasti nespecifikuje číslo priority, když spouští (2783682_CZ.doc)
0000 •0 0000
0000 0
0 0 · · 0 · 0 0 0 0 0 · 0 0 0 0 0 0 0 0 0 0 0 0 0 0 • 0 00 00 0000
START SUBCHANNEL, interpretační spuštění instrukce START SUBCHANNEL porovná programově specifikovanou hodnotu priority s hypervisorem specifikovanými min./max. hodnotami priorit v tabulce popisu stavu. Pokud je programově specifikovaná priorita nižší než hypervisorem specifikovaná minimální hodnota, pak minimální hodnota z tabulky popisu stavu implicitně nahradí programově specifikovanou hodnotu.
Pokud je programově specifikovaná priorita vyšší než hypervisorem specifikovaná maximální hodnota, pak maximální hodnota z tabulky popisu stavu implicitně nahradí programově specifikovanou hodnotu.
Techniku prioritního výběru lze navrhnout s použitím žádného a více z výše uvedených kritérií. S ohledem na obr. 9 je popsáno jedno provedení techniky pro výběr požadavku ke zpracování, která používá alespoň některá z výše uvedených kritérií.
Nejprve se v kroku 900 přistoupí k frontě čekajících úloh. Buďto se například přistoupí k frontě úloh V/V procesoru nebo k frontě úloh řídící jednotky. Poté se v kroku 902 o jedna zvýší (např. DQCOUNT=DQCOUNT+1) počet ve frontě zařazených čekajících požadavků. Následně se v kroku 904 provede rozhodnutí, jaká kategorie čekajících požadavků má být zpracována. V jednom příkladu je zvolená kategorie rovna DQCount modulo počet kategorií. Jelikož jsou tedy v tomto příkladu čtyři kategorie, zvolená kategorie je rovna DQCount modulo 4. Pokud je výsledek 0, pak se v kroku 906 z fronty vyřadí první požadavek s jakoukoli prioritou. Pokud však je zvolena kategorie 1, pak se v kroku 908 vybere požadavek s nejvyšší prioritou, který ještě nebyl z fronty vyřazen. Dále pokud je zvolena kategorie 2, pak se v kroku 910 vybere požadavek s nejvyšší prioritou, který byl dříve (2783682_CZ.doc) »· >··· •0 ·<0· z fronty vyřazen a neúspěšně vyvolán. Pokud však je výsledek 3, pak se v kroku 912 vybere první požadavek s jakoukoli prioritou, který nebyl dříve z fronty vyřazen. Poté je v kroku 914 vybraný požadavek vyřazen z fronty a zpracován.
Podrobný popis výše je mechanismem stanovení priorit pro asynchronní požadavky v procesoru. I když jsou příklady popsány s ohledem na V/V požadavky a kanálové subsystémy, jsou to pouze příklady. Přístup je stejně použitelný pro ostatní asynchronní požadavky a koprocesory. Dále přestože je příklad uvedený výše popsán s ohledem na řazení do front, lze použít podobný mechanismus stanovení priorit pro přizpůsobení přidělení zdrojů (např. šířky pásma) v kanálu, který je schopen současně spouštět několik operací, tak, že více kanálových zdrojů se předá operacím s vyšší prioritou, než aby vše bylo spuštěno rovnocenně.
Dále přestože zde popsané různé příklady jsou popsány s ohledem na logicky rozčleněný systém, funkce V/V priorit jsou použitelné i v systému, který nemá či nepodporuje logické oblasti.
Další výhodou je, že V/V konfiguraci (např. konfiguraci kanálových cest) počítačového prostředí lze dynamicky měnit, aby se přesunul dostupný kanálový zdroj tam, kde je ho zapotřebí, nebo aby se odstranil nadbytečný kanálový zdroj, bez lidského zásahu. To zmenšuje schopnosti potřebné pro konfigurování V/V, zvětšuje celkovou dostupnost systému, maximalizuje využití instalovaných kanálů a využívá relativní priority úloh k rozdělování dostupné V/V kapacity. V jednom provedení se před provedením změny pohlíží na jeden či více faktorů, aby se určila „nejlepší změna k provedení. Tyto faktory zahrnují například vliv na dobu odezvy (2783682_CZ.doc)
9999 99 99 · · · · 4 «·> toto··
9 ·
9 ·
• toto · · • to · < · · to • · · to · · · • to toto toto 999 k dosažení specifických cílů úloh; obsazený cílový port; charakteristiku výsledné dostupnosti (např. přidání cest bez žádných společných chybových bodů); a výslednou složitost (neboli entropii) V/V konfigurace.
S ohledem na obr. 10-14 je podrobně popsáno jedno provedení logiky spojené s dynamickým přizpůsobováním V/V konfigurace. Nejprve je např. složkou správce úloh v počítačovém prostředí voláno základní vyvážené zpracování na začátku pravidelně rozvržených časových intervalů, např. každých 10 sekund. Funkcí základního vyváženého zpracování je soustavně vyvažovat rychlost V/V rovnoměrně mezi subsystémy (např. logickými řídícími jednotkami) (s definovanými plovoucími (tj. řízenými) kanály); zajistit, že ke všem zařízením lze přistoupit přes dvě a více cest, nejlépe s žádnými společnými chybovými body; a znovu vyvážit subsystémy po selhání hardwaru. Toto zpracování obsahuje dvě složky: sběr dat v kroku 1000 (obr. 10) a kontrolu je spuštěn jednou :za je logicky rozčleněno, nebo vyváženosti v kroku 1002. Sběr dat v každém intervalu v každé logické oblasti prostředí předpokladu, že prostředí v každém systému, pokud nebylo logicky rozčleněno) ; a kontrola vyváženosti je pouze spouštěna jednou za interval za LPAR ve skupině (opět za předpokladu seskupování).
Serializace části sběru dat ve zpracování je dosaženo skutečností, že WLM volá základní vyvažující techniku v jakémkoli systému pouze jednou za interval. Navíc se pří aktualizaci sebrané informace používá kontroly Čísla verze. Například k aktualizaci sebrané informace jsou serializovány řídící bloky uložené v propojovací soustavě. Tyto řídící bloky umožňují sběr dat skupinové úrovně, který umožňuje správu kanálů nad členy skupiny na stejném CPC.
(2783682_CZ.doc)
Za účelem serializace kontroly vyváženosti se výslovně pro ten účel používá serializace se skupinovým rozsahem. Když se volá vyvažování ihned po sběru dat, je typicky požadována skupinová serializace. Pokud je docíleno serializace, pokračuje kontrola vyváženosti; pokud ne, pak již kontrola vyvážeností probíhá v seskupené LPAR a není nutné ji spouštět v tomto intervalu znova.
Zpracování sběru dat na obr. 10 je dále popsáno s ohledem na obr. 11. V jednom provedení se v kroku 1100 sbírají a aktualizují data měření definovaná pro každý subsystém (např. logickou řídící jednotku). Data měření zahrnují např. výpočty doby připojení, doby čekání, vytíženosti subsystému, vytíženosti zařízení, obsazeného cílového portu. Aktualizovaná data měření jsou uložena v řídících blocích procesorové paměti a současně v řídících blocích ve sdílené paměti, jako je propojovací soustava.
Následně po aktualizaci dat měření se v kroku 1102 vypočítá pro každý subsystém cílená V/V rychlost. V/V rychlost udává, zda je potřebná či žádoucí další šířka pásma kanálu. Například implicitní cílená V/V rychlost je vážena dobou spojení. Aby se provedl tento výpočet, podle jednoho příkladu se podniknou následující kroky: Pro každý subsystém spravovaný pomocí DCM se získá současná neboli aktuální rychlost spolu s množstvím doby spojení poskytnutého subsystému během uplynulého intervalu. V/V rychlost se poté vynásobí dobou spojení, čímž se získá výsledek. Výsledky pro subsystémy se poté sečtou, aby se získal součet. Součet se pak vydělí celkovou dobou spojení, aby se určila implicitní cílená V/V rychlost vážená dobou spojení.
(2783682_CZ.doc)
Vrátíme-li se k obr. 10, po provedení sběru dat se v kroku 1002 provádí kontrola vyváženosti, jak zde bylo popsáno. S ohledem na obr. 12 je popsáno jedno provedení logiky spojené s kontrolou vyváženosti. Nejdříve se provede serializace, aby se dotazem 1200 určilo, zda by se měla provést v tomto okamžiku kontrola vyváženosti. Pokud je pokus o získání skupinové serializace neúspěšný, pak se logika kontroly vyváženosti neprovádí, což je krok 1202. Pokud je však serializace získána, pak se v kroku 1204 mezi subsystémy vyhledají ty, které se nacházejí vně svého cíleného rozsahu.
Například je získána aktuální V/V rychlost pro všechny subsystémy a poté se vezme průměr. (V jednom příkladě se do průměru zahrnou pouze ty subsystémy, které jsou spravovány pomocí dynamické správy CHPID (DCM, z angl. dynamic CHPID management).) Jakmile je určen průměr, vytvoří se rozsah. V jednom příkladě je např. rozsahem plus či minus 5% průměrné hodnoty. Poté se porovná cílená V/V rychlost subsystému s cíleným rozsahem. Pokud není každého specifikována žádná cílená V/V rychlost, pak se použije implicitní cílená V/V rychlost. Jako výsledek porovnání se v kroku 1206 vytvoří dva seznamy. Jeden ze seznamů obsahuje ty subsystémy, které přesahují cílený rozsah a druhý obsahuje ty subsystémy, které nezasahují rozsah. V každém případě jsou ze seznamů vyřazeny ty subsystémy, které byly v poslední době (např. během uplynulých 10 sekund) modifikovány.
Poté se v kroku 1208 setřídí seznam s nesplněnými cíly. V jednom příkladě se k setřídění tohoto seznamu používá WLM, protože WLM je v pozici toho, kdo rozhoduje, které subsystémy jsou nej důležitě j ší. WLM si tedy uspořádá (2783682_CZ.doc) • « · · · · subsystémy do pořadí, v kterém je hodlá obsloužit.
Následně po seřazení seznamu se v kroku 1210 jeden či více ze subsystémů na seznamu obslouží např. posunutím kapacity z podvyužíváných subsystémů do nadvyužívaných subsystémů. Přizpůsobí se tolik subsystémů, kolik může být obslouženo ve vymezeném čase.
S ohledem na obr. 13a-13b je popsáno jedno provedení logiky spojené s přizpůsobováním kapacity. Napřed se v kroku 1300 (obr. 13a) vybere ze seznamu subsystém. V jednom příkladu je to, co se vybere, první subsystém ze seznamu. Poté se dotazem 1302 provede určení, jestli problémem je to, že je cílový port vytížený. Konkrétně se určí, zda je kolize (např. doba vytížení cílového portu) vysoká a pokud je, zda se mění s ohledem na různá zde připojená rozhraní. Pokud je cílový port vysoce vytížen na všech rozhraních, pak to znamená, že je potřeba přidat další kanálovou cestu. Pokud je však vysoké vytížení pouze na jednom rozhraní, pak je kanálová cesta v kroku 1304 přesunuta na jiné rozhraní. Tak se existující cesta přemístí z rozhraní s nadměrnou dobou vytížení cílového portu na jiné rozhraní a zpracování pokračuje v kroku 1306 (obr. 13b) implementací změny. Příklady, jak implementovat změnu, jsou popsány v U.S. 5 257 379 vydaném v říjnu 1993; U.S. 5 257 368 vydaném v říjnu 1993; a U.S. 5 220 654 vydaném v červnu 1993.
Poté, co je změna implementována, provede se dotazem 1308 určení, zda existují další subsystémy, které nejsou v cíleném rozsahu. Pokud ne, pak je zpracování korekce nevyváženosti hotovo. Pokud však další systémy nejsou v rozsahu, pak zpracování pokračuje krokem 1300 „VÝBĚR DALŠÍHO SUBSYSTÉMU ZE SEZNAMU (obr. 13a).
(2783682_CZ.doc) · » · · · • ·
Vrátíme-li se k dotazu 1302, pokud problém není v důsledku kolize, pak zpracování pokračuje, jak je popsáno zde.
Především se v jednom příkladě v kroku 1310 určí možné kanálové cesty, které lze subsystému přidat. Toto určení obsahuje ve fyzické topologii kontrolu všech kanálů, které se mohou dostat k příslušnému subsystému, a poté pro každý kanál určení možných způsobů (cest), jak se dostat k subsystému. Cesta je permutací propojitelnosti přes hardwarové prvky spojující a obsahující kanál i subsystém. Všechny tyto cesty (nebo podmnožina, pokud je to žádoucí) jsou obsaženy v možných cestách.
Obdobné se v kroku 1312 provede určení možných cest pro odstranění. Pokud je například několik systémů na stejném kanálu, pak se jedna z cest připojených ke sdílenému subsystému považuje za kandidáta pro odstranění.
Nato se v kroku 1314 provede určení, které subsystémy budou změnou zasaženy. Dále se také určí, jak je popsáno níže, index udávající složitost konfigurace, jež má být změněna.
S ohledem na obr. 14 je popsáno jedno provedení logiky spojene v kroku s určováním 1400 pro ovlivněných subsystémů. Nejprve se pozdější použití vyčistí seznam řídících bloků (SSCB, z angl. subsystém subsystémových control block) pro subsystémy a seznam CHPID pro kanály. Poté se z bloku výběru rozhodnutí (DSB, z angl. decision selection block) spojeného s navrženým kanálem získá identifikátor kanálové cesty a v kroku 1402 je přidán do (2783682_CZ.doc) • · seznamu CHPID. Každá cesta má přidružen příslušný blok výběru rozhodnutí. Blok výběru rozhodnutí je řídící blok, který obsahuje různé informace včetně např. identifikátoru kanálové cesty (CHPID), ukazatele na subsystémový řídící blok (SSCB) označující logickou řídící jednotku spojenou s kanálovou cestou a pole ovlivněných SSCB. Každý SSCB obsahuje všechny kanály připojené k subsystému.
Poté jsou v kroku 1404 všechny nápomocné CHPID spojené s SSCB také přidány do seznamu CHPID. Ukazatel na SSCB se zejména získá z DSB, který označuje nápomocný SSCB. Všechny CHPID v daném SSCB se poté přidají do seznamu CHPID.
Pak se pro každý CHPID v seznamu v kroku 1406 přidají do SSCB seznamu SSCB spojené s kanálovou cestou. V jednom příkladu se tato informace získá z tabulky kanálových cest, která označuje SSCB připojené ke každému CHPID.
Následně se dotazem 1408 provede určení, zda byly nějaké SSCB přidány do seznamu. Pokud ano, pak se v kroku 1410 pro každý SSCB v seznamu přidají ty CHPID, které ještě nejsou v CHPID, jak bylo popsáno výše spolu s krokem 1404.
Poté se dotazem 1412 provede další určení, zda byly do seznamu přidány nějaké CHPID. Pokud byly do seznamu přidány další CHPID, pak zpracování pokračuje krokem 1406. Pokud však nebyly do seznamů přidány SSCB ani CHPID, dotazy 1408 a 1412, pak se v kroku 1414 pro každý SSCB v seznamu vytvoří prvek DSB pole. Tj. každý SSCB je přidán do pole ovlivněných SSCB. Navíc je každý z prvků pole v kroku 1416 aktualizován aktuální a cílenou V/V rychlostí, současným delta mezi cílenou a aktuální V/V rychlostí a SSCB ukazatelem.
(2783682_CZ.doc) • · ··· ·
Μ ····
• · · * · · ··· • 999 9 ·· ·· ·· ····
Vrátíme-li se k obr. 13a, kromě předchozího se v kroku 1316 vypočítá pro každou cestu index dostupnosti. V jednom příkladu je index dostupnosti číslo, které udává, kolik jednotlivých chybových bodů má navržená cesta společných s existujícími cestami do subsystému. Pokud má být kanálová cesta přidána, pak je žádoucí, aby neměla žádné samostatné chybové body. Pokud má být kanálová cesta odstraněna, pak se typicky vybere kanálová cesta s nejvíce samostatnými chybovými body.
Následně se v kroku 1318 promítne dopad na ovlivněné subsystémy. V jednom příkladě se zejména pohlíží na současné zatížení každého subsystému, aby se určilo, jakým způsobem se toto změní, když se provede změna. Pomocí této informace se v kroku 1320 vybere nej lepší alternativa. K výběru té nej lepší alternativy lze uvažovat různé faktory včetně např. následujících:
• Která alternativa nejvíce přiblíží subsystém cíli?
• Která alternativa zajistí nej lepší dostupnost?
• Která alternativa zajistí nej lepší symetrii (nejnižší entropii)?
• Sníží tato alternativa celkový počet cest pod dvě?
• Naruší tato alternativa nějaké explicitní cíle (WLM může zajistit použití explicitních cílů namísto implicitních cílů)?
• Poruší tato alternativa nějaká omezení architektury?
• Poruší tato alternativa konfiguraci, tak jak je definována instalací?
• Pokusí se tato alternativa používat zdroje, které jsou momentálně nedostupné?
V jednom konkrétním příkladu se nejprve vyloučí všechny (2783682_CZ.doc) bloky výběru rozhodnutí, které nelze za žádných okolností implementovat. To zahrnuje například ty, které porušují omezení architektury, ty, které snižují celkový počet cest pod dvě, ty, které porušují konfiguraci, jak je definována instalací (např. používají více než maximální počet plovoucích kanálových cest povolených definicí), a ty, které se pokusí využívat zdroje, které jsou momentálně nedostupné (např. ty, které se pokoušejí využívat porty, které byly znepřístupněny.) (Tuto funkci lze posunout ve zpracování dříve, aby se index dostupnosti a promítnutý dopad na subsystémy nepočítaly pro DSB, které nikdy nemohou být vybrány.)
Pokud v současné době existuje pouze jedna cesta k subsystému (což je možné krátce po startu systému nebo po výpadku), vyber cestu s nej lepším indexem dostupnosti. Jestliže jich více má stejné indexy dostupnosti, vyber tu cestu, která má nejnižší index entropie, který posune cílený subsystém do záměru cílené V/V rychlosti. Pokud existuje více než jedna, vyber tu, jejíž celkové navrhované delta („Σ navrhovaného delta z DSB) je nejnižší.
Pokud v současné době existuje více než jedna cesta k subsystému, najdi množinu DSB s nej lepším indexem dostupnosti. Najdi v množině ty alternativy, které dostanou cílený subsystém do tolerance cílené V/V rychlosti a mají nejnižší index entropie. Pokud existuje více než jedna, vyber tu, jejíž celkové navrhované delta („Σ navrhovaného delta z DSB) je nejnižší.
Pokud neexistuje taková alternativa, najdi množinu cest s dalším nej lepším indexem dostupnosti a zkus to znova.
(2783682_CZ.doc) ·· ···· • · · · · · · · · · • · ······· ···· · ·· ·· ·«····
Pokud žádná z alternativ nedostane subsystém do tolerance, vybere se ta, která subsystém nejvíce přiblíží cíli bez ohledu na její index dostupnosti či index entropie. (Výše popsaná technika pro výběr nej lepší alternativy je pouze jedním příkladem. K výběru nej lepší alternativy lze provést různé dodatky, výmazy a modifikace a lze použít jakékoli jiné vyhovující techniky.)
Po pokusu výběru nej lepší alternativy se dotazem 1322 provede určení, zda lze nového cíle dosáhnout bez zasažení subsystémů s explicitními cíli. Jinými slovy, zda ovlivní nej lepší alternativa negativním způsobem subsystémy s explicitními cíli, které byly nastaveny WLM. Pokud ano, vyvolá se v kroku 1324 správce úloh, aby vybral vhodnou cestu. Podrobně, správce úloh vybere cestu a zvolí pro dárce nové cíle.
Následně, nebo pokud lze nového cíle dosáhnout bez negativního dopadu na subsystémy s explicitními cíli, je v kroku 1306 změna implementována a zpracování pokračuje v dotaze 1308 určením, zda existují další systémy, které nejsou v cíleném rozsahu.
Jak je uvedeno výše, WLM může nastavit explicitní cíl V /V rychlosti, který bude používán namísto implicitního průměrného cíle V/V rychlosti. V jednom provedení WLM nastaví explicitní cíl, pokud WLM shledá, že obslužná třída neplní své úkoly. S ohledem na obr. 15 je popsáno jedno provedení logiky spojené s nastavením explicitního cíle subsystémové V/V rychlosti.
Nejprve se dotazem 1500 provede určení, zda největší zdržení způsobuje V/V. Pokud ne, pak je pro současné účely (2783682_CZ.doc)
ΦΦ φφφφ φφ φφφφ
• · · φ φ φ φ · · • ΦΦΦ φ φφ φφ φφ φφφφ zpracování hotovo. Pokud však největší problémy způsobuje V/V, pak se v kroku 1502 provede pokus o přizpůsobení V/V priority. Poté se dotazem 1504 provede určení, zda obslužná třída plní své úkoly. Pokud nyní obslužná třída plní své úkoly, pak je zpracování hotovo. Pokud však obslužná třída stále neplní své úkoly, pak se v kroku 1506 provede vyhledání subsystémů, které jsou obslužnou třídou používány a mají nízkou V/V rychlost. Pro jeden či více subsystémů, které jsou objeveny, se nastaví nové cíle subsystémové V/V rychlosti. V jednom příkladě je to nastaveno zvýšením současného cíle o stanovené množství a následným promítnutím vlivu na subsystém. Pokud je dopad přiměřený (např. nad hodnotou příjemce), pak je zpracování hotovo. Pokud není, cíl je znovu zvýšen a zpracování se opakuje.
Výše je podrobně popsána dynamická správa CHPID (DCM), která zajišťuje dynamické přizpůsobování V/V konfigurací. DCM je výhodné sloučena s WLM, který umožňuje provádět rozhodnutí s pochopením úloh a cílů. Dále DCM umožňuje správu kanálů nad několika oblastmi (např. skupinou oblastí). To umožňuje přidání zdrojů tam, kde jsou potřeba stejně jako odebrání nadbytečných zdrojů.
Jak je popsáno výše, pomocí dynamické správy CHPID (DCM) je vybrán „nejlepší kanál k připojení do (nebo k odstranění ze) subsystému. Za účelem toho se zkoumá jeden či více atributů včetně např. složitosti (neboli entropie) výsledné V/V konfigurace.
Zvýšená entropie znamená, že V/V konfigurace se stává příliš složitou, což vede k nadměrné době při DCM zpracování, nepřesným výsledkům z důvodu nadbytečných čísel ovlivňovaných subsystémů, složitosti při hlášení výkonu a (2783682_CZ.doc)
0· 00
0 00 · 0000 • 0 0 0 0 · · ·
000 »
0« 0000
0 0000 000 • 000 0 00 00 00 0000 složitosti při stanovování problému. V upřednostňovaném provedení tohoto vynálezu je tedy poskytnuta schopnost stanovit relativní entropii různých výběrů tak, aby bylo možné při provádění výběru, jaká konfigurace má být přizpůsobena, uvažovat relativní entropii spolu s dalšími ohledy, jako jsou V/V rychlost a dostupnost.
Při určování relativní entropie se počítá index entropie. Například v případě, kdy je přidávána cesta, je indexem entropie součet kanálů a subsystémů ve výsledné konfiguraci. Dále v případě, kdy je cesta odstraňována, odráží index entropie množinu kanálů a subsystémů propojených s cíleným subsystémem poté, co je cesta odstraněna. Neobsahuje kanály a subsystémy, které dále v množině nebudou.
K výpočtu stupně entropie pro každou alternativu se používá počet kanálů a subsystémů, které jsou spojeny za předpokladu, že bude rozhodnutí implementováno. Jedním základním předpokladem techniky entropie je výpočet indexu, který umožní porovnání dvou a více navrhovaných topologií a stanovení, která z nich je symetričtější nebo má menší entropii. Účelem je vyhnout se široce propojeným topologiím, což by dle podezření snížilo přesnost techniky V/V rychlosti a pro lidi by potom bylo těžší analyzovat problémy výkonu v důsledku příliš složitých topologií.
S ohledem na různé příklady je popsáno jedno provedení techniky určování entropie. Obr. 16a například znázorňuje jeden příklad konfigurace 1600, která obsahuje dva kanály 1602 připojené ke dvěma subsystémům 1604. Pokud subsystém 22 potřebuje dodatečný zdroj, může jej získat alespoň ze dvou míst. Může jej získat buďto z kanálu 1 nebo z kanálu 3.
(2783682_CZ.doc)
4444 ····
44
4 4 · · · · 4 · · • 4 ··· 44 4 • · 4 4 4 4 · 4 4 4 • 4 4444 444
4444 4 44 44 44 ····
Pokud jej získá z kanálu pak má výsledná konfigurace tři kanály a dva subsystémy (obr. 16b) . To pro konfiguraci dává index pět (3+2) . Pokud však subsystém 22 přijme další zdroj z kanálu 1 (obr. 16c), pak výsledná konfigurace nemá více kanálu či subsystémů, než měla původně, a její výsledný index entropie je dvě. V tomto příkladě má druhá alternativa menší entropii.
Uvažujme jiný příklad. V příkladu znázorněném na obr. 17a potřebuje subsystém 23 dodatečný zdroj. Ten lze získat z kanálu 2_ nebo 4. Pokud se použije kanál .2 (obr. 17b), výsledný index entropie je pět (tj . tři kanály propojené se dvěma subsystémy v jedné konfiguraci; kanál 4 se nepočítá, protože není připojen.) Pokud se použije kanál 4 (obr. 17c), výsledný index je tři. Druhá alternativa má tedy menší entropii.
Dále uvažujme případy, kde se konfigurace rozděluje, abychom určili, jaký to má vliv na entropii.
Co se týče obr. 18a, pokud subsystém 23 má přebytečnou kapacitu, lze odstranit kanál 2, nebo 2· Pokud se odstraní kanál 2 (obr. 18b) , pak se konfigurace rozdělí a index entropie obou konfigurací se sníží. Pokud se odstraní kanál 2 (obr. 18c), zůstane pořád jedna konfigurace, avšak s nižším indexem entropie, než byl původní index. Zdá se, že rozhodnutí, které rozlomí konfiguraci jakoby na dvě, vede ke dvěma méně komplikovaným sítím a je v tomto provedení lepší volbou.
Při odstraňování, pokud je znám index existující konfigurace (obr. 19a) stejně jako index navrhované konfigurace obsahující subsystém k dispozici (pravá strana (2783682_CZ.doc) •V ·**· «· 99
9 9 9 9 9 9 9
9 9 9 9 9 « • 9 9 9 9 9 9 9 9
9 9 9 9 9 9 9
99 99 99 9999 obr. 19b), index druhé konfigurace (levá strana obr. 19b) lze vypočítat pomocí rozdílu. V tomto příkladě je index druhé konfigurace roven 2 (4-3=1 a 2-1=1, takže 1+1=2).
Pokud rozdíl vede k nule pro počet subsystémů či kanálů jako na obr. 19c, pak byla entropie snížena bez rozdělení konfigurace. (Např. 2 subsystémy-2 subsystémy=0.) V tomto provedení se upřednostňuje rozdělení.
V následujícím příkladu má subsystém 23 nadbytečný zdroj (obr. 2 0a) . Lze odstranit kanály 2 nebo 3. Pokud se odstraní kanál 2 (obr. 20b), je výsledný index entropie 7. Pokud se odstraní kanál 2 (obr. 20c), konfigurace se rozdělí do dvou konfigurací s konfigurací k dispozici (konfigurace se subsystémem 23) mající index entropie 5 druhou konfigurací mající index entropie provedení se upřednostňuje rozdělení konfigurace.
a výslednou 3 . V tomto
Nyní jsou uvažovány další příklady, aby se stanovilo, zda je při odstraňování žádoucí pouze hledat rozdělení a nedívat se na výslednou hodnotu entropie.
V příkladu znázorněném na obr. 21a má subsystém 23 příliš velkou šířku pásma. Lze odstranit buďto kanál 2 nebo
3. Pokud se odstraní kanál 2 (obr. 21b), obdržíme nový index entropie 6 a výsledný index entropie druhé konfigurace 3. Pokud se odstraní kanál 4 (obr. 21c) , obdržíme nový index entropie 5 a výsledný index entropie druhé konfigurace 4. Konfigurace s indexy entropie 5 a 4 je lepší volbou. Tudíž typ rozdělení hraje v tomto provedení roli.
V příkladu znázorněném na obr. 22a potřebuje subsystém 23 dodatečný zdroj. Lze odstranit subsystém 21 z kanálu 2 (obr. 22b), což subsystému 23 poskytne veškeré zdroje kanálu (2783682_CZ.doc)
2; nebo lze odstranit subsystém 25 z kanálu 4 (obr. 22c) , což subsystému 23 poskytne veškeré zdroje kanálu 4.
Pokud se odstraní subsystém 21 z kanálu £, je výsledný index entropie 7a index výsledné druhé konfigurace je 2. Pokud je odstraněn subsystém 25 z kanálu 4, je nyní výsledný index entropie 6 a výsledné druhé konfigurace 3. Druhá volba se zdá v tomto provedení lepší, protože rozdělení má blíže ke stavu souměrnosti.
Aby se spočítalo, která alternativa má blíže k tomu být poloviční (tj . „souměrná), určí se rozdíl v počtu kanálů a subsystémů mezi novým indexem entropie a indexem výsledné druhé konfigurace. V tomto příkladu vede první volba na indexy entropie 7 a 2, takže rozdíl je 5 (tj. index symetrie) . Druhá volba vede na indexy entropie 6 a 3, takže rozdíl je 3. Nej lepší volbou je v tomto provedení ta s nižším rozdílem.
Na závěr tedy by měly být v tomto provedení eliminovány alternativy, které neposouvají subsystém blíže k cílené V/V rychlosti. Dále se počítá index entropie sečtením celkového počtu kanálů a subsystémů, které jsou ve výsledné konfiguraci propojeny. Pokud se nezmění index entropie, je změna symetrická. Typicky se vybere konfigurace s nej nižším indexem entropie. Vyhýbat se výběru konfigurace s více než osmi kanály, i kdyby to znamenalo vybrat nějakou s vyšším indexem entropie. Pokud není alternativa, vybrat konfiguraci s více než osmi kanály a doufat, že v dalším intervalu bude tato konfigurace rozdělena.
I když jsou popsány obměny výše uvedených provedení s ohledem na V/V konfigurace, schopnosti zde popsané jsou (2783682_CZ.doc) • · · · · stejně dobře aplikovatelné na jiné sítě, jako jsou sítě paměťové oblasti stejně jako další.
Výše jsou popsány různé mechanismy pro správu zdrojů počítačového prostředí. Fyzické sdílitelné zdroje jsou spravovány nad logickými oblastmi počítačového prostředí. Logické oblasti jsou seskupeny, aby umožnily sdílení zdrojů např. pomocí alokací zdrojů založených na prioritách. Toto sdílení zdrojů zahrnuje např. dynamickou správu CPU zdrojů nad LPAR; dynamickou správu CHPID nad LPAR, řazení V/V priorit do front v kanálovém subsystému a dynamickou správu paměti nad LPAR.
V tomto příkladu je za tuto správu alespoň částečně zodpovědný správce úloh. Sdílitelné zdroje jsou dynamicky přerozdělovány nad LPAR pod řízením správce úloh, které je transparentní pro subsystémy aplikace. Zdroje jsou poskytovány potřebným oblastem na základě sledování aktivity a zákazníkových cílů. Navíc dynamické přizpůsobování fyzických zdrojů podle cílů úloh prostřednictvím např. WLM, sysplexu a integrace PR/SM je typicky zajištěno bez potřeby paralelního sdílení sysplexových dat.
(2783682_CZ.doc) φφφφ * ·
Φ · • Φ e φ • ·· φ φ φ · Φ · ] sou popsana ruzna možné ocenit, že toto
V provedeních popsaných výše počítačová prostředí a systémy. Je jsou pouze příklady a nejsou míněny jako omezení rozsahu tohoto vynálezu. Stejně tak zde znázorněné vývojové diagramy jsou pouze vzorové. Lze provést mnohé obměny těchto diagramů nebo kroků (či operací) . Například kroky mohou být, kde je to vhodné, provedeny v odlišném pořadí nebo lze kroky přidávat, odebírat či modifikovat.
Zastupuje:
Dr. Petr Kalenský y.r.
z' /
,......... · '/.
ι?η °θ Hůlková g
Česka republika (2783682_CZ.doc)
JUDr. Petr Kalenský advokát
120 00 Praha 2, Hálkova 2

Claims (36)

  1. PATENTOVÉ NÁROKY
    1. Způsob správy zatížení úlohami počítačového, prostředí, vyznačující se tím, že obsahuje správu úloh nad dvěma a více oblastmi z množství oblastí počítačového prostředí a správa obsahuje dynamické přizpůsobování alokace sdílitelného zdroje alespoň jedné oblasti z daných dvou nebo více oblastí, přičemž se vyvažují cíle úloh dvou a více oblastí.
  2. 2. Způsob podle nároku 1, vyznačující se tím, že dynamické přizpůsobování se provádí transparentně ke zpracování úloh alespoň v jedné oblasti.
  3. 3. Způsob podle kteréhokoli předcházejícího nároku, vyznačující se tím, že sdílitelný zdroj obsahuje alespoň jeden z procesorových zdrojů, logických procesorových zdrojů, vstupních/výstupních zdrojů, kanálových zdrojů, koprocesorů, síúových adaptérů a paměti.
  4. 4. Způsob podle kteréhokoli předcházejícího nároku, vyznačující se tím, že dynamické přizpůsobováni obsahuje přesunutí alespoň části sdílitelného zdroje z jedné oblasti alespoň do jedné další oblasti.
  5. 5. Způsob podle kteréhokoli předcházejícího nároku, vyznačující se tím, že dynamické přizpůsobování obsahuje správu sdílitelného zdroje mezi dvěma či více oblastmi na základě priority.
    2783682 (2783682_CZ.doc)
  6. 6. Způsob podle kteréhokoli z nároků 1 až 5, vyznačující se tím, že dynamické přizpůsobování obsahuje přidělení sdílitelného zdroje mezi dvě či více oblasti na základě procentuelní alokace, přičemž každé oblasti ze dvou či více oblastí se přidělí procentní podíl sdílitelného zdroje.
  7. 7. Způsob podle kteréhokoli předcházejícího nároku, vyznačující se tím, že oblasti jsou logické oblasti.
  8. 8. Způsob podle kteréhokoli předcházejícího nároku, vyznačující se tím, že dynamické přizpůsobování je řízeno alespoň zčásti alespoň jedním správcem úloh počítačového prostředí.
  9. 9. Způsob podle kteréhokoli předcházejícího nároku, vyznačující se tím, že dynamické přizpůsobování se provádí aniž by vyžadovalo sdílení dat.
  10. 10. Způsob správy úloh počítačového prostředí, vyznačující se tím, že obsahuje identifikaci skupiny z množství oblastí počítačového prostředí a správu skupiny oblastí určením sdílitelného zdroje, který se má přiřadit skupině, přičemž alespoň část sdílitelného zdroje je alokována množství oblastí ze skupiny.
  11. 11. Způsob podle nároku 10, vyznačující se tím, že jedna či více oblastí obsahují jeden nebo více výskytů alespoň jednoho operačního systému.
  12. 12. Způsob podle kteréhokoli z nároků 10-11, (2783682_CZ.doc) t · · ♦ · · • · ·· ·· vyznačující se tím, že dále obsahuje spojení skupiny alespoň jednou oblastí z jedné nebo více oblastí.
  13. 13. Způsob podle nároku 12, vyznačující se tím, že spojení ovlivňuje alespoň část sdílitelného zdroje alokovatelného uvedené skupině.
  14. 14. Způsob podle kteréhokoli z nároků 10-13, vyznačující se tím, že dále obsahuje odebrání oblasti z uvedené skupiny.
  15. 15. Způsob podle nároku 14, vyznačující se tím, že odebrání ovlivňuje alespoň část sdílitelného zdroje alokovatelného uvedené skupině.
  16. 16. Způsob podle kteréhokoli z nároků 10-15, vyznačující se tím, že identifikace obsahuje identifikováni množství skupin jedné nebo více oblastí.
  17. 17. Způsob podle kteréhokoli z nároků 10-16, vyznačující se tím, že dále obsahuje opětovné přizpůsobování alokace alespoň části sdílitelného zdroje alespoň jedné oblasti uvedené skupiny.
  18. 18. Způsob podle nároku 17, vyznačující se tím, že dále obsahuje ověřeni toho, že opětovné přizpůsobování neovlivní celkové množství alespoň části sdílitelného zdroje pro danou skupinu.
  19. 19. Způsob podle kteréhokoli z nároků 10-18, vyznačující se tím, že dále obsahuje ověření toho, že sdílitelný zdroj může být alokován uvedené skupině.
    (2783682_CZ.doc) ····
  20. 20. Způsob správy úloh počítačového prostředí, vyznačující se tím, že obsahuje určení toho, že skupina počítačového prostředí byla změněna, přičemž skupina obsahuje množství oblastí počítačového prostředí a správu skupin oblastí pomocí dynamického přizpůsobování, v rámci skupiny, alokace zdroje uvedené skupiny odezvou na určení.
  21. 21. Způsob podle nároku 20, vyznačující se tím, že dynamické přizpůsobování udržuje celkovou alokaci zdroje v uvedené skupině.
  22. 22. Způsob podle nároku 20, vyznačující se tím, že dále obsahuje dočasné využití množství zdroje, danou skupinou, nad množství alokované pro danou skupinu.
  23. 23. Způsob podle nároku 22, vyznačující se tím, že dále obsahuje:
    určení toho, že existuje kolize pro daný zdroj a opětovné přizpůsobení uvedeného množství tomu množství, které bylo uvedené skupině alokováno.
  24. 24. Způsob správy úloh v počítačovém prostředí, vyznačující se tím, že obsahuje určení toho, že by měla být přizpůsobena alokace CPU zdrojů oblasti počítačového prostředí a dynamické přizpůsobení alokace nad oblastí a jinou oblastí počítačového prostředí.
  25. 25. Způsob podle nároku 24, vyznačující se tím, že dynamické přizpůsobování probíhá odezvou na úkoly úloh alespoň jedné oblasti.
    (2783682_CZ.doc) • Φ • 9 φ· ···· ·· ····
  26. 26. Způsob podlé nároku 24 nebo 25, vyznačuj ící se tím, že dynamické přizpůsobování obsahuje modifikaci první CPU procesorové váhy přidělené uvedené oblasti a druhé CPU procesorové váhy předělené jiné oblasti.
  27. 27. Způsob podle nároku 26, vyznačující se tím, že modifikace obsahuje:
    zvýšení první CPU procesorové váhy a snížení druhé CPU procesorové váhy.
  28. 28. Způsob podle nároku 27, vyznačující se tím, že první CPU procesorová váha se zvýší o množství rovné snížení druhé CPU procesorové váhy, přičemž součet první CPU procesorové váhy a druhé CPU procesorové váhy zůstává konstantní.
  29. 29. Způsob podle kteréhokoli z nároků 24-28, vyznačující se tím, že oblast a jiná oblast jsou ve skupině oblastí.
  30. 30. Způsob podle kteréhokoli z nároků 24-29, vyznačující se tím, že oblast obsahuje jednu nebo více obslužných tříd úlohy a určení obsahuje:
    promítnutí účinku zvýšení procesorové váhy spojené s danou oblastí na vybranou obslužnou třídu z jedné nebo více obslužných tříd;
    promítnutí účinku snížení procesorové váhy jiné oblasti na jednu nebo více obslužných tříd jiné oblasti a určení toho, zda výhoda pro vybranou obslužnou třídu převyšuje negativní dopad na úlohy jiné oblasti, přičemž přizpůsobení se bude provádět, pokud výhoda převyšuje negativní dopad.
    (2783682_CZ.doc) • · · · ϊ .* ·♦· ··::.·
    - 59 - .··.···:
    • 9
    9 ·
    9 ·
    99·9 ·
  31. 31. Způsob podle kteréhokoli z nároků 24-30, vyznačující se tím, že dále obsahuje výběr jiné oblasti, přičemž výběr je založen na důležitosti úlohy, která se má provádět v uvedené jiné oblasti.
  32. 32. Počítačový program pro implementaci způsobu podle kteréhokoli z předcházejících nároků.
  33. 33. Systém správy úloh počítačového prostředí, vyznačující se tím, že obsahuje prostředky pro správu úloh nad dvěma a více oblastmi z množství oblastí počítačového prostředí a prostředky pro správu, které obsahuji dynamické přizpůsobováni alokace sdílitelného zdroje alespoň jedné oblasti z daných dvou a více oblastí, přičemž cíle úloh dvou a více oblastí se vyvažují.
  34. 34. Systém správy úloh počítačového prostředí, vyznačující se tím, že obsahuje prostředky pro identifikaci skupiny z množství oblastí počítačového prostředí a prostředky pro správu skupiny oblastí určením sdílitelného zdroje, který má být přiřazen skupině, přičemž alespoň část sdílitelného zdroje je alokována množství oblastí z uvedené skupiny.
  35. 35. Systém správy úloh počítačového prostředí, vyznačující se tím, že obsahuje prostředky pro určení toho, že skupina počítačového prostředí byla pozměněna, přičemž skupina obsahuje množství oblastí počítačového prostředí a prostředky pro správu skupin oblastí pomocí dynamického (2783682_CZ.doc) ·· ···· ·· ··«· přizpůsobování, v rámci skupiny, alokace zdroje uvedené skupiny odezvou na určování.
  36. 36. Systém pro správu úloh v počítačovém prostředí, vyznačující se tím, že obsahuje prostředky pro určování toho, že by měla být přizpůsobena alokace CPU zdrojů oblasti počítačového prostředí a prostředky pro dynamické přizpůsobení alokace nad oblastí a jinou oblastí počítačového prostředí.
CZ20021093A 1999-09-28 2000-09-28 Správa úloh v počítačovém prostředí CZ20021093A3 (cs)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/408,470 US7051188B1 (en) 1999-09-28 1999-09-28 Dynamically redistributing shareable resources of a computing environment to manage the workload of that environment
US09/407,212 US6587938B1 (en) 1999-09-28 1999-09-28 Method, system and program products for managing central processing unit resources of a computing environment
US09/407,391 US7007276B1 (en) 1999-09-28 1999-09-28 Method, system and program products for managing groups of partitions of a computing environment

Publications (1)

Publication Number Publication Date
CZ20021093A3 true CZ20021093A3 (cs) 2002-06-12

Family

ID=27410700

Family Applications (1)

Application Number Title Priority Date Filing Date
CZ20021093A CZ20021093A3 (cs) 1999-09-28 2000-09-28 Správa úloh v počítačovém prostředí

Country Status (14)

Country Link
EP (1) EP1256039B1 (cs)
JP (1) JP3872343B2 (cs)
CN (1) CN100397341C (cs)
AT (1) ATE283512T1 (cs)
AU (1) AU7437600A (cs)
BR (1) BRPI0014350B1 (cs)
CA (1) CA2382017C (cs)
CZ (1) CZ20021093A3 (cs)
DE (1) DE60016283T2 (cs)
ES (1) ES2228607T3 (cs)
HU (1) HU228286B1 (cs)
IL (2) IL148728A0 (cs)
PL (1) PL365894A1 (cs)
WO (1) WO2001023974A2 (cs)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4292693B2 (ja) * 2000-07-07 2009-07-08 株式会社日立製作所 計算機資源分割装置および資源分割方法
US7203719B2 (en) * 2001-08-22 2007-04-10 International Business Machines Corporation Method and system to measure distributed system's relative size
JP2003067351A (ja) * 2001-08-28 2003-03-07 Nec System Technologies Ltd 分散型コンピュータの構成制御システム
US6694419B1 (en) 2002-04-12 2004-02-17 Barsa Consulting Group, Llc Method and system for automatically measuring partition memory needs in a partitioned computer system
US6968441B1 (en) 2002-04-12 2005-11-22 Barsa Consulting Group, Llc Method and system for managing interdependent resources of a computer system
US6738886B1 (en) 2002-04-12 2004-05-18 Barsa Consulting Group, Llc Method and system for automatically distributing memory in a partitioned system to improve overall performance
US7290260B2 (en) 2003-02-20 2007-10-30 International Business Machines Corporation Dynamic processor redistribution between partitions in a computing system
JP2005165813A (ja) * 2003-12-04 2005-06-23 Matsushita Electric Ind Co Ltd 分散計算機システム管理方法
JP2006079495A (ja) * 2004-09-13 2006-03-23 Hitachi Ltd ストレージシステム及び論理区画の設定方法
JP4503470B2 (ja) * 2005-03-17 2010-07-14 富士通株式会社 サーバ管理装置及び計算機サーバ
DE102005014717B4 (de) 2005-03-31 2022-09-29 Fujitsu Technology Solutions Intellectual Property Gmbh Computersystem und Verfahren zur Aufteilung und Zuteilung von Rechenleistung innerhalb eines Computersystems
US7844709B2 (en) * 2006-09-20 2010-11-30 International Business Machines Corporation Method and apparatus for managing central processing unit resources of a logically partitioned computing environment without shared memory access
US20090055831A1 (en) * 2007-08-24 2009-02-26 Bauman Ellen M Allocating Network Adapter Resources Among Logical Partitions
EP2193484A4 (en) * 2007-08-31 2011-12-21 Cirba Inc METHOD AND SYSTEM FOR EVALUATING VIRTUALIZED ENVIRONMENTS
US7739434B2 (en) * 2008-01-11 2010-06-15 International Business Machines Corporation Performing a configuration virtual topology change and instruction therefore
US7734900B2 (en) 2008-01-11 2010-06-08 International Business Machines Corporation Computer configuration virtual topology discovery and instruction therefore
US7487506B1 (en) 2008-01-16 2009-02-03 International Business Machines Corporation Autonomous management of system throughput
CN101778428B (zh) * 2009-01-14 2013-07-24 电信科学技术研究院 一种确定时频资源的方法、系统和装置
CN101819540B (zh) * 2009-02-27 2013-03-20 国际商业机器公司 在集群中调度任务的方法和系统
CN101706743B (zh) * 2009-12-07 2012-09-05 北京航空航天大学 一种多核环境下的虚拟机调度方法
US8869160B2 (en) * 2009-12-24 2014-10-21 International Business Machines Corporation Goal oriented performance management of workload utilizing accelerators
US8589941B2 (en) * 2010-04-23 2013-11-19 International Business Machines Corporation Resource affinity via dynamic reconfiguration for multi-queue network adapters
US9081613B2 (en) 2010-11-02 2015-07-14 International Business Machines Corporation Unified resource manager providing a single point of control
US9253016B2 (en) 2010-11-02 2016-02-02 International Business Machines Corporation Management of a data network of a computing environment
US8959220B2 (en) 2010-11-02 2015-02-17 International Business Machines Corporation Managing a workload of a plurality of virtual servers of a computing environment
US8984109B2 (en) 2010-11-02 2015-03-17 International Business Machines Corporation Ensemble having one or more computing systems and a controller thereof
US8966020B2 (en) 2010-11-02 2015-02-24 International Business Machines Corporation Integration of heterogeneous computing systems into a hybrid computing system
CN102063331B (zh) * 2011-01-07 2013-04-17 同济大学 用于空间计算并行化的自适应负载平衡方法
CN103974149A (zh) * 2013-02-01 2014-08-06 鼎点视讯科技有限公司 分配带宽方法及装置
CN103279389B (zh) * 2013-04-28 2016-06-22 中国工商银行股份有限公司 一种主机批量负载的调度方法以及调度系统
US9715268B2 (en) * 2015-05-08 2017-07-25 Microsoft Technology Licensing, Llc Reducing power by vacating subsets of CPUs and memory
US10034407B2 (en) * 2016-07-22 2018-07-24 Intel Corporation Storage sled for a data center
CN106371922A (zh) * 2016-08-29 2017-02-01 成都支付通卡友电子商务有限公司 动态负载平衡批量处理系统
US10452436B2 (en) * 2018-01-03 2019-10-22 Cisco Technology, Inc. System and method for scheduling workload based on a credit-based mechanism

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2682770B2 (ja) * 1992-05-15 1997-11-26 富士通株式会社 仮想計算機システムのcpu制御方式
CA2100540A1 (en) * 1992-10-19 1994-04-20 Jonel George System and method for performing resource reconfiguration in a computer system
JPH0991257A (ja) * 1995-09-25 1997-04-04 Nec Corp Cpu管理方式
US5925102A (en) * 1997-03-28 1999-07-20 International Business Machines Corporation Managing processor resources in a multisystem environment in order to provide smooth real-time data streams, while enabling other types of applications to be processed concurrently
JP4634548B2 (ja) * 1997-11-04 2011-02-16 ヒューレット・パッカード・カンパニー マルチプロセッサコンピュータシステム及びその動作方法
US6647508B2 (en) * 1997-11-04 2003-11-11 Hewlett-Packard Development Company, L.P. Multiprocessor computer architecture with multiple operating system instances and software controlled resource allocation

Also Published As

Publication number Publication date
BR0014350A (pt) 2003-07-29
JP3872343B2 (ja) 2007-01-24
DE60016283T2 (de) 2005-12-01
CA2382017C (en) 2007-06-26
EP1256039A2 (en) 2002-11-13
EP1256039B1 (en) 2004-11-24
WO2001023974A3 (en) 2002-09-12
ATE283512T1 (de) 2004-12-15
DE60016283D1 (de) 2004-12-30
AU7437600A (en) 2001-04-30
PL365894A1 (en) 2005-01-10
CN1391671A (zh) 2003-01-15
IL148728A (en) 2007-08-19
IL148728A0 (en) 2002-09-12
CA2382017A1 (en) 2001-04-05
JP2003514270A (ja) 2003-04-15
ES2228607T3 (es) 2005-04-16
HU228286B1 (en) 2013-02-28
BRPI0014350B1 (pt) 2017-03-21
WO2001023974A2 (en) 2001-04-05
CN100397341C (zh) 2008-06-25
HUP0301326A2 (en) 2003-08-28

Similar Documents

Publication Publication Date Title
CZ20021093A3 (cs) Správa úloh v počítačovém prostředí
KR100420421B1 (ko) 계산환경의 논리 프로세서들을 관리하는 방법, 시스템 및 기록매체
US6587938B1 (en) Method, system and program products for managing central processing unit resources of a computing environment
KR100419680B1 (ko) 계산 환경의 코프로세서 내에서의 비동기 i/o 요청들의 관리 방법 및 시스템과 기록 매체
US7051188B1 (en) Dynamically redistributing shareable resources of a computing environment to manage the workload of that environment
JP3807916B2 (ja) コンピュータ環境の区画のグループを管理する方法およびシステム
US6519660B1 (en) Method, system and program products for determining I/O configuration entropy
US9152467B2 (en) Method for simultaneous scheduling of processes and offloading computation on many-core coprocessors
US20100042721A1 (en) Dynamic application placement with allocation restrictions, vertical stacking and even load distribution
US20050034130A1 (en) Balancing workload of a grid computing environment
US7568052B1 (en) Method, system and program products for managing I/O configurations of a computing environment
Lagerstrom et al. PScheD Political scheduling on the CRAY T3E
JP2021060707A (ja) 同期制御システムおよび同期制御方法