Umělá inteligence na GPU má konkurenci z Číny, ASIC Cambricon má výkon 166 TOPS

27. 5. 2018

Sdílet

 Autor: Redakce

Trhu s výkonnými čipy pro výpočty umělé inteligence (či přesněji strojového učení/neuronových sítí) dominuje momentálně Nvidia. Ovšem vesměs se očekává, že by se tento trh měl postupně z obecných GPU přesunout na specializované obvody (čipy „ASIC“) navržené čistě pro AI. Takovým ASICem jsou TPU (nedávno byla představena jejich třetí generace) od Googlu a vyvíjí je také Intel ve své divizi Nervana. Čipy se ale zatím neobjevily v praxi a vypadá to, že tohoto papírového favorita předejde nečekaný nový hráč. A to firma Cambricon z Číny.

Cambricon jste zatím asi nemuseli zaregistrovat, ale nejde o úplně nové jméno. Tato firma totiž vyvinula AI blok „NPU“, který se loni na podzim objevil v procesorech Kirin 970 od HiSiliconu (Huawei) jako jeden z prvních speciálních akcelerátorů strojového učení v mobilech. Architektura Cambriconu se ale neomezí jen na nízkospotřebové aplikace v mobilech. Firma nyní vypustila také samostatnou a lze říci vysoce výkonou verzi, která by měla být schopna přímo konkurovat GPU používaným pro strojové učení v serverech a podobných nasazeních.

Výkon až 166 TOPS

Samostatný AI ASIC má označení Cambricon MLU100 a jde o čip vyráběný na 16nm procesu TSMC. Architektura je označená MLUv1 (MLU znamená Machine Learning Unit), ale jde zřejmě o variantu licencovatelného IP Cambricon-1A, které je použito ve zmíněném SoC Kirin jako jeho NPU. Zde je však vyškálována do značně větších rozměrů. MLU100 může dosahovat TDP 80–110 W, přičemž v 80W režimu běží na taktu 1,0 GHz a má vyvíjet teoretický výpočetní výkon 64 TFLOPS. Vedle toho je možné použít režim „high performance“ s taktem 1,3 GHz, který zvýší spotřebu až na oněch 110 W a výkon na 83,2 TFLOPS. Nejde o přetaktování, ale o regulérní konfiguraci, proti standardnímu režimu je v ní o něco snížena efektivita (což bude důvod, proč není tento takt výchozí).

Tyto výkony platí pro operace s plovoucí čárkou o poloviční přesnosti (FP16), které jsou pro strojové učení nejpopulárnější. MLU100 ale podporuje také výpočty s 8bitovými celočíselnými hodnotami (INT8), v nichž je výkon dvojnásobný. V standardním režimu tedy 128 TOPS a v HP dokonce 166,4 TOPS. Cambricon MLU100 by se při použití těchto datových typů hrubým teoretickým výkonem dal srovnat s GPU Volta GV100 od Nvidie (120 TFLOPS pomocí Tensor Cores, které ale používají FP16), a to i přes výrazně nižší spotřebu. Otázka ale je, jaká bude u obou řešení reálná „výtěžnost“ tohoto výkonu; čistě TOPS/TFLOPS tedy nemusí být všechno.

ČIp Cambricon ML100. Respektive jeho kovoý rozvaděč tepla (Zdroj: WikiChip) ČIp Cambricon ML100. Respektive jeho kovoý rozvaděč tepla (Zdroj: WikiChip)

Čip je vybaven pamětí typu DDR4 s kapacitou 16 nebo 32 GB, jejíž šířka sběrnice je 256 bitů (fyzicky 288 bitů, jelikož je používáno ECC). Běží na 3200 MHz efektivně a dodává tak čipu jen relativně nízkou propustnost (ve srovnání s nejvýkonnějšími GPU) 102,4 GB/s. Také TPU od Googlu začínalo v první generaci s pamětí DDR3 a v další generaci dosáhlo výrazného zrychlení asi mimo jiné díky výkonnějším pamětem. Je možné, že Cambricon také zvolil DDR4 pro začátek jako cestu nejmenšího odporu, a při dalším vývoji půjde stejným směrem a nasadí GDDR5 nebo HBM2.

Camrbicon ML100 v provedení karty PCI Express ×16, aktivní chladič Camrbicon ML100 v provedení karty PCI Express ×16, aktivní chladič

Cambricon by zřejmě mohl prodávat i samostatné čipy (ty by mohly být použity v určeních jako jsou samořídící automobily), ale pro serverová nasazení nabízí ASIC MLU100 ve formě akcelerátorové karty do slotu PCI Express ×16. Podle dostupných fotografií (či vizualizací) zabírá dva sloty a má nasazeno aktivní chlazení připomínající grafické karty (radiální ventilátor a průběžně profukovaný pasiv). Vedle toho ale má existovat i pasivní model, kde bude pasiv ochlazován průvanem vytvářeným ventilátory serverového šasi. V tomto ohledu tedy vypadá MLU100 stejně jako typické serverové výpočetní karty.

bitcoin_skoleni

Pasivní provedení pro rackové servery Pasivní provedení pro rackové servery

Jelikož Google TPU samo neprodává a nabízí je jen jako službu svého Cloudu, vypadá to, že by Cambricon MLU100 mohl být prvním ASICem konkurujícím v strojovém učení čipům GPU. Firma ale bude samozřejmě muset kromě hardwaru úspěšně zajistit také softwarovou stránku. Zdá se, že by měla mít dostupná SDK pro frameworky TensorFlow, Caffe a MXNet. Tyto akcelerátory si již také našly i nějaká uplatnění, nabízí je Lenovo jako možnost ve svých serverech ThinkSystem SR650, ovšem zatím asi ještě nejsou fyzicky dostupné.

Tento akcelerátor nebude poslední „Machine Learning Unit“, kterou čínská firma vyprodukuje. Podle webu WikiCHip bude následovat čip MLU200, který má zřejmě mít větší možnosti a flexibilitu (a nejspíš i výkon). Zatímco MLU100 je určen pro inferenci, tedy aplikaci hotových neuronových sítí, MLU200 má zvládat jak inferenci, tak trénování. Zda půjde stále o 16nm čip, nebo už bude použit 7nm proces, nevíme. Pro 7nm výrobu má Cambricon vyvinuté IP označení Cambricon-1M, jež má pro mobilní účely dosáhnout energetické efektivity až 5 TOPS/1 W a být dostupné ve variantách pro výkon 2, 4 nebo 8 TOPS. Pro srovnání, ARM u svého vlastního nedávno představeného licenčního IP pro umělou inteligenci Trillium slibuje 3 TOPS/1 W, rovněž na 7nm procesu.