Produkční úlohy ALICE na farmě Goliáš Dagmar Adamová, Jiří Chudoba 7.1.2007 1 Produkce ALICE V rámci Physics Data Challenge 2006 (PDC 06), masívního testu výpočetního modelu projektu ALICE v distribuovaném prostředí, byly na farmě Goliáš zpracovávány produkční úlohy nepřetržitě v období červen - prosinec 2006. Jednalo se o Monte Carlo simulace případů srážek p+p a Pb+Pb. Fungování PDC 06 bylo zajišt ováno kombinací prvků middleware projektů LCG a ALICE Grid (AliEn). Lokálně použité middleware komponenty byly: LCG Computing Element, PBSPro server, Worker Node (WN), LCG File Catalogue LFC a VO-box s instalovaným User Interface. AliEn servery v CERN zajišt ovaly centrální služby, tj. AliEn catalogue, job submission/control, task queue a monitoring. Na farmě Goliáš byl AliEn nainstalován na ALICE VObox do adresáře sdíleného s WNs. Popis funkcí middleware komponent lze nalézt v [1, 2]. 1.1 Použitý hardware Výpočetní uzly farmy Goliáš můžeme rozdělit do několika skupin podle jejich hardware: HP LP1000r, 2x Pentium III 1.13GHz, 1 GB RAM, 18 GB SCSI hard disk, 2 GB swap HP ProLiant DL140, 2x XEON 3.06 GHz, 2 GB RAM, 40 GB ATA hard disk, 4 GB swap, HyperThreading vypnut HT off HP ProLiant DL140, 2x XEON 3.06 GHz, 4 GB RAM, 40 GB ATA hard disk, 4 GB swap, HyperThreading zapnut HT on HP Blade BL35p, 2x Opteron 275, 2.2 GHz, dual core, 4 GB RAM, 40GB ATA disk, 4 GB swap HP Blade BL35p, 2x Opteron 280, 2.4 GHz, dual core, 8 GB RAM, 72GB SAS disk, 8 GB swap 1
Farma používá lokální dávkový systém PBSPro [3], pro produkční gridové úlohy alice je vyhrazena fronta lcgaliceprod. Vzhledem k vysokým pamětovým nárokům simulačních úloh ALICE byl nastaven scheduler tak, aby se úlohy nespouštěly na strojích s pouze 1 GB paměti. 2 Porovnání pomocí ALICE úloh ALICE pro distribuci produkčních úloh využívá mechanismus, který posílá pilotní úlohy. To jsou krátké obecné úlohy, které po spuštění na pracovním uzlu (WN) zkontrolují podmínky pro běh úlohy a pak si na centrálním serveru vyžádají konkrétní zadání úlohy. Mezi těmito úlohami mohou být produkční úlohy i úlohy od uživatelů, priority jsou určovány na centrálním serveru. Vzhledem k tomu, že uživatelských úloh bylo v poměru k produkci velmi málo, můžeme předpokládat, že v kratších časových intervalech jsou téměř všechny úlohy stejné z hlediska výpočetní náročnosti. Přesná detailní analýza chování úloh by vyžadovala zkoumání jejich log souborů a ověření, zda byl výsledek validován. Tyto log soubory jsou v některých případech jen obtížně dosažitelné a pro mnoho úloh, které neskončily úspěšně, ani neexistují. Proto jsme pro porovnání výkonnosti různých typů WN v ALICE produkčních úlohách použili jednodušší způsob pomocí analýzy log souborů dávkového systému PBSPro. Porovnali jsme počet a délku úloh na jednotlivých skupinách WN. Typická simulační úloha potřebuje i na nejrychlejších procesorech několik hodin výpočetního času (CPUTime). Úlohy, které spotřebovaly méně než 1000 s výpočetního času, nemohly skončit úspěšně, všechny takové úlohy považujeme za chybné. Některé úlohy jsou ztraceny i po využití mnoha hodin procesorového času (CPUTime), takové však v našem zjednodušeném přístupu nedokážeme odlišit od validovaných úloh. Dalším zdrojem neefektivního použití zdrojů jsou úlohy, které neberou CPUTime, ale zůstávají na WN a blokují spuštění dalších úloh. Tyto úlohy mají velký rozdíl mezi CPUTime a celkovým spotřebovaným časem (WallTime). Porovnání jsme prováděli pro 3 časové úseky, každý o délce 9 dní. Z tabulky 1 je vidět, že naprostá většina úloh na uzlech s HT on neproběhla správně, CPUTime byl velmi krátký. Ačkoliv úlohy na uzlech s HT on a s HT off mají stejný průměrný čas, veliký rozptyl pro úlohy na uzlech s HT on naznačuje, že úlohy nekončily úspěšně. Celkový čas promarněný krátkými úlohami na těchto uzlech je ekvivalentní neustálému použití téměř 9 procesorů (79/9). Malý rozptyl celkového času pro úlohy na Xeonech s HT off a Opteronech umožňuje určit relativní výkonnost těchto procesorů pro ALICE simulace - 2
Xeon HT on Xeon HT off Opteron 275 počet 371 862 721 WallTime - součet (dny) 164 321 202 CPUTime - průměr (h) 8.2 ± 7.2 8.2 ± 0.8 6.0 ± 0.6 WallTime - průměr (h) 10.6 ± 8.5 9.0 ± 1.2 6.7 ± 0.8 počet 8810 483 225 WallTime - součet (dny) 79 4 2 Tabulka 1: Výsledky pro období 10.7.2006-18.7.2006 CPU Time - HT on 45 cpu_h Entries 371 Mean 8.199 RMS 7.206 CPU Time - HT off 300 cpu_h2 Entries 862 Mean 8.18 RMS 1.343 40 35 250 30 200 25 20 150 15 100 10 5 50 0 0 5 10 15 20 25 30 35 CPU Time [hours] 0 0 5 10 15 20 25 30 35 CPU Time [hours] Obrázek 1: Rozdělení CPU času pro úlohy na uzlech se zapnutým HT on a vypnutým HT off 1.34. Velmi podobný poměr (1.36) vychází i pro CPU čas. Je tedy možno říci, že jeden uzel Blade BL35p se 2 dvoujádrovými procesory a 4 GB RAM byl ekvivalentní 2.7 (2 krát 1.35) uzlům DL140, každý se 2 procesory a 2 GB RAM. Ve druhém sledovaném období byl PBS scheduler nastaven tak, že úlohy ve frontě lcgaliceprod vyžadovaly alespoň 1100 MB volné paměti: set queue lcgaliceprod resources default.mem = 1100mb. Změna byla provedena 20.7.2006. Typicky to znamená, že na jednom uzlu s HT on nemohou najednou běžet 4 úlohy alice. Je jasný pozitvní efekt na výsledky - počet krátkých úloh se snížil a rozptyl času se zmenšil. Nezjistili jsme, proč se zvýšil počet krátkých úloh na uzlech s HT off. Větší rozptyl u průměrných časů na uzlech s HT off a s Opterony je způsoben dlouhými 3
konci rozdělení časů směrem k vyšším hodnotám. Můžeme se dohadovat, zda je to způsobeno současným během jiných než ALICE úloh na stejných uzlech. Pokud úlohy jiných uživatelů běžely na stejném WN, mohly ovlivnit výpočetní časy pro úlohy ALICE, i když byly spouštěny na samostatných procesorech. Poměr průměrného spotřebovaného času pro úlohy na uzlech s HT on a s HT off je 10.3/8.6=1.2. Pokud bychom předpokládali vždy 3 úlohy na uzlu s HT on a 2 úlohy na uzlu s HT off, ukazuje se zapnutí HT jako užitečné. 6 úloh se na 1 uzlu s HT on v průměru spočte za 20.6 hodiny a na uzlu s HT off za 25.8 h, využití HT přináší zrychlení o 25%. Výkonnostní poměr mezi procesory Opteron a Xeon (HT off ) se snížil z 1.35 na 1.2, důvod není znám. Poměr výkonů mezi CPU Opteron a Xeon (HT off ) se v prosinci zvýšil na hodnotu 1.44. V září se pro úlohy používaly stroje BL35p (golias101 až golias110), na které byly úlohy posílány vždy, když se uvolnilo alespoň jedno jádro. Na stejných strojích mohly běžet úlohy i z jiných projektů, nastavení scheduleru by mělo zajistit vždy nejvíce jednu úlohu na jedno jádro. V prosinci se používal pouze jeden stroj BL35p se 2 procesory Opteron 280 (dohromady 4 jádra), který byl vyhrazen pouze pro ALICE úlohy. Procesory Opteron 280 by měli být díky vyšší frekvenci (2.4 GHz) o téměř 10 % rychlejší než procesory Opteron 275 s frekvencí 2.2 GHz. Stroj byl osazen 8 GB RAM, ale jádro linuxu (2.4.21-37.EL.cernsmp, stejné jako na golias101 - golias110) dokázalo používat pouze 4 GB. Při náhodných kontrolách bylo využití swap v řádech stovek MB, nevyužití celé dostupné paměti by nemělo příliš ovlivňovat výpočetní čas. Stroje s HT on nebyly využívány vůbec kvůli potížím při nastavování fair share systému v scheduleru PBS. 11 WN s HT off bylo exkluzivně vyhrazeno Xeon HT on Xeon HT off Opteron 275 počet 586 394 493 WallTime - součet (dny) 252 142 161 CPUTime - průměr (h) 8.4 ± 3.4 6.0 ± 2.2 5.0 ± 1.2 WallTime - průměr (h) 10.3 ± 3.8 8.6 ± 3.7 7.8 ± 5.0 počet 477 761 802 WallTime - součet (dny) 10 12 14 Tabulka 2: Výsledky pro období 10.9.2006-18.9.2006 4
Xeon HT on Xeon HT off Opteron 280 počet 0 764 193 WallTime - součet (dny) 0 170 30 CPUTime - průměr (h) 0 4.9 ± 1.5 3.4 ± 1.2 WallTime - průměr (h) 0 5.3 ± 1.7 3.7 ± 1.4 počet 0 1536 350 WallTime - součet (dny) 0 20 4 Tabulka 3: Výsledky pro období 10.12.2006-18.12.2006 pro ALICE úlohy, žádné jiné úlohy se na těchto strojích nespouštěly. Zvýšení počtu krátkých úloh na WN s HT off oproti hodnotám ve sledovaném úseku v září přibližně odpovídá zvýšení počtu dlouhých úloh (764/394 = 1.9 vs 1536/761 = 2.0). Je nasnadě závěr, že počet krátkých úloh není negativně ovlivněn sdílením WN s úlohami jiných experimentů. 3 Závěr Sledovali jsme počty a průměrné časy ALICE úloh ve 3 různých obdobích. Ukázali jsme nezbytnost nastavení požadavku na pamět pro úlohy spouštěné na WN s HT on. Spouštění 3 úloh na 1 WN s HT on vede k urychlení výpočtů o 25% v poměru k WN s HT off. Jedno jádro procesoru Opteron 275 2.2 GHz bylo pro ALICE výpočty o 20% až 35% rychlejší než 1 procesor Xeon 3.06 GHz. Reference [1] AliEn homepage: http://alien.cern.ch [2] LCG and glite middleware: http://glite.web.cern.ch/glite/packages/ [3] Altair PBSPro: http://www.altair.com/software/pbspro.htm 5