Síla více jader: dual-core dual Opteron server (1)

Opteron logo Společnost Abacus nám zapůjčila na testování dvou-jaderný dual Opteron v 1U, na kterém jsme samozřejmě otestovali 64 bitový Linux.

8.9.2005 07:00 | Ondřej Čečák | přečteno 23462×

AMD Opteron

AMD Opteron

V dubnu roku 2003 uvedla společnost AMD na trh svůj první 64 bitový procesor Opteron, který byl malou revolucí ve světě serverových procesorů na architektuře x86. Dvou-jaderný (dual core) Opteron byl oficiálně představen téměř o dva roky později, 21. dubna 2005.

Na úvod si připomeňme některé vlastnosti a výhody architektury AMD64, kam 64bitový procesor AMD Opteron patří.

Dual core

Více jader v jednom procesoru není žádná horká novinka, jako první tuhle technologii představila firma IBM ve svém procesoru POWER4 už v roce 2001. Společnosti AMD a Intel vydaly veřejnosti první více-jaderné procesory až na jaře v roce 2005 (Intel byl o fous rychlejší).

Dvou-jaderný procesor si můžete představit u AMD jako spojení dvou procesorů – pouze v jednom kousku křemíku tak získáte přibližný ekvivalent dvoucestného systému. Navíc jednotlivá jádra spolu na rozdíl od Intelu komunikují přímo a ne přes sběrnici desky.

Mimochodem, nepleťte si Dual-core s HyperThreadingem od Intelu. HyperThreading umožňuje pouze paralelní zpracování dvou programů jedním procesorem najednou, což je něco trochu jiného.

Dual core v podání AMD

Situace u dual core Opteronu je dost podobná klasickému stroji s dvěma samostatnými procesory. (Pěkný pohled na věc s nezbytnou dávkou informací pro managery nalezete v interaktivní flashové prezentaci u AMD, ve které doporučuji prozkoumáni Direct Connect Architecture.)

AMD Opteron Design

Jak je vidět z prezentace nebo z obrázku nad tímto odstavcem, každé z jader má svůj vlastní megabyte L2 cache a díky novince "Direct Connect Architecture", kterou do série 200 přinesl procesor AMD Opteron 252, mohou jádra komunikovat přímo a rychle mezi sebou, se společným 128 bitovým řadičem paměti nebo s výkonným I/O subsystémem (jehož maximální propustnost je 24 GB/s – frekvence sběrnice HyperTransport byla zvýšena z 800 MHz na 1 GHz a tak došlo ke zvýšení propustnosti z 6,4 GB/s na 8 GB/s). Mimo to byla také zařazena podpora instrukční sady SSE3.

Výhody AMD dual-core

Licencování

Docela zajímavá situace nastala u licencí softwaru, kde se za licenci platí podle počtu procesorů. Po nasazení dvou-jaderných systémů došlo ke zvýšení výkonnosti podobně jako po přidání dalšího procesoru, ale cena za licenci zůstala stejná.

AMD jako samozvaný leader ve více-jádrovém x86 průmyslu důrazně doporučuje licencovat software po procesorech a ne po jejich jádrech. Toto doporučení akceptovala mj. firma Microsoft. Ale například Oracle nejprve považoval dvou-jaderný procesor za jeden, záhy za dva a nyní se vzhledem k ceně licence počítá jedno jádro jako tři čtvrtiny procesoru.

Hardware

Námi testovaná sestava obsahovala:

Procesor: 2x Dual Core AMD Opteron 275 (2,2 GHz, 1 MB L2 cache na každé jádro)
Základní deska: Supermicro H8DAR-T (chipset AMD 8132 a AMD 8111, 2x Broadcom Corporation NetXtreme BCM5704 Gigabit Ethernet, 2x USB 1.1, ATI Technologies Inc Rage XL 8 MB, 1U IPMI 2.0)
Paměť: 2x Kingston KRX 3200 1024 MB DIMM SDRAM
Uložení dat: Adaptec Serial ATA RAID 2410S (hardwarový RAID, 4x SATA), 3x WD Raptor (SATA, 75 GB, 10.000 RPM, 8 MB cache, 5 let záruka), DVD, 3,5" floppy
Case: černá SC813T+-500 Chassis (1U s hot-swap cage na 4 disky)
Rozšiřitelnost: až 12 GB paměti (32 GB 266 MHz; 8 banků), 2 64-bit 133/100MHz PCI-X

Osazená základní deska Rozšiřitelnost Pamět 1U case Disk

Základní deska. *** Sestavu lze ještě rozšířit dvěma PCI-X kartami. *** Pamět s vlastním pasivním chladičem. *** Čelní pohled na 1U case. *** Disk WD Raptor.

Operační systém

Asi nebude příliš překvapivé, že operačním systémem na testovacím stroji je Linux, který je v použité distribuci Debian GNU/Linux 3.1 ve verzi 2.6.8 (jádro řady 2.4 jsem nezkoušel).

Síťová instalace proběhla celkem bez problémů, ale při jejím průběhu jsem narazil na další nepříjemnost u installeru – aniž bych o tom věděl, instaloval jsem systém na poškozené disky s vadnými sektory a z installeru se tohle nedá dost dobře poznat.

Nejprve systém po nainstalování nenabootoval, později instalační program zamrzl v průběhu instalace zavaděče (raději jsem zvolil GRUB, protože opět nemám po ruce 64 bitový rescue režim nebo alespoň nějaký live systém). Pak už bylo jasné, že chyba nebude mezi klávesnicí a židlí nebo v Debianu, ale že chybný bude hardware.

Po připojení fungujících disků bylo vše v naprostém pořádku. Tedy musím opět poznamenat, že z installerem vytvořeného XFS na RAIDu 5 nebo 1 mi LILO ani GRUB nezvládl nabootovat (resp. se úspěšně zavést do MBR alespoň jednoho z disků), takže jsem instalaci opět provedl se svazkem /boot v budoucím swap oddílu.

Po instalaci základního systému a SSH pro vzdálenou administraci systém nenabootoval s distribučním jádrem kernel-image-2.6.8-11-amd64-k8-smp, které je pro Opterony přímo určené. Hned při začátku bootu jádra došlo k chybě. Problém jsem vyřešil snadno – instalací vanilla kernelu 2.6.13 (právě kvůli jeho kompilaci jsem chtěl mít jádro s podporou SMP, aby bylo možné využit více procesorů a jejich jader).

Kernel se zkompiloval a nabootoval bez problémů, .config opět vycházel z Debianu, konkrétně z nefunkčního SMP jádra. Vypnul jsem v něm jenom pár zbytečností, takže půjde ještě snadno zmenšit.

S podporou SMP v jádře systém vypadá jako se 4 procesory, pokud se podíváte na výpis blíže, uvidíte, že u každého procesoru je vidět core id a celkový počet jader na procesoru (cpu cores).

quadro:~# cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 33
model name      : Dual Core AMD Opteron(tm) Processor 275
stepping        : 2
cpu MHz         : 2205.038
cache size      : 1024 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm
3dnowext 3dnow pni lahf_lm cmp_legacy
bogomips        : 4418.90
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp

processor       : 1
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 33
model name      : Dual Core AMD Opteron(tm) Processor 275
stepping        : 2
cpu MHz         : 2205.038
cache size      : 1024 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm
3dnowext 3dnow pni lahf_lm cmp_legacy
bogomips        : 4410.32
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp

processor       : 2
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 33
model name      : Dual Core AMD Opteron(tm) Processor 275
stepping        : 2
cpu MHz         : 2205.038
cache size      : 1024 KB
physical id     : 1
siblings        : 2
core id         : 0
cpu cores       : 2
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm
3dnowext 3dnow pni lahf_lm cmp_legacy
bogomips        : 4410.32
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp

processor       : 3
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 33
model name      : Dual Core AMD Opteron(tm) Processor 275
stepping        : 2
cpu MHz         : 2205.038
cache size      : 1024 KB
physical id     : 1
siblings        : 2
core id         : 1
cpu cores       : 2
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm
3dnowext 3dnow pni lahf_lm cmp_legacy
bogomips        : 4410.32
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp
Knoppix 4-way system CPUs Cool system

Pro systém představuje deska s dvěma dual-core opterony 4-cestný systém, proto 4 tučňáci v Knoppixu. *** Procesory jsou schované v pouzdře pod masivním chladičem. *** Uchladit takový stroj v 1U není snadné, o proudění vzduchu vhodné do racku (tedy nasávat vpředu, vyfukovat vzadu) se stará několik větráčků.

Závěr prvního dílu

V druhém a současně závěrečném díle popíši hardware a jeho podporu detailněji a také se podíváme na některé výkonnostní testy.

Komerční oznámení:
Tento stroj prodáváme od 143 630 Kč (bez DPH) v Linux CD Shopu.

 

Poděkování:
Rád bych za tým Linuxsoftu poděkoval společnosti Abacus, která nám server na otestování laskavě zapůjčila. Děkujeme.
Online verze článku: http://www.linuxsoft.cz/article.php?id_article=951