Pashmangshmëria e infiltrimit të FPGA në qendrat e të dhënave

Pashmangshmëria e infiltrimit të FPGA në qendrat e të dhënave
Nukë është e nevojshme të jesh një zhvillues çipesh për të programuar për FPGA, ashtu siç nuk është e nevojshme të jesh një programues në C++ për të shkruar kod në Java. Sidoqoftë, në të dy rastet, është e mundur që kjo të mos jetë e tepërt.

Qëllimi i komercializimit të të dy teknologjive, Java dhe FPGA, është të hedhin poshtë këtë deklaratë të fundit. Lajmi i mirë për FPGA është se, duke përdorur nivelet e duhura të abstraksionit dhe mjetet, në 35 vitet e fundit, që nga shpikja e pajisjeve logjike të programueshme, është bërë gjithnjë e më e lehtë të krijosh algoritme dhe rrjedha të dhënash për FPGA në vend të CPU-ve, DSP-ve, GPU-ve ose ndonjë forme tjetër ASIC të specializuar.

Mrekullia e krijimit tĂ« tyre pĂ«rputhet me faktin se pikĂ«risht kur CPU-tĂ« nuk mund tĂ« vazhdojnĂ« tĂ« jenĂ« moduli i vetĂ«m pĂ«r llogaritje. qendrat e tĂ« dhĂ«nave pĂ«r tĂ« pĂ«rfunduar shumĂ« detyra – pĂ«r arsye tĂ« ndryshme – FPGA arritĂ«n efektivitetin e tyre, duke ofruar performancĂ«, vonesĂ« tĂ« ulĂ«t, mundĂ«si rrjetesh dhe memorie – kapacitetet e larmishme tĂ« llogaritjeve moderne tĂ« FPGA SoC, qĂ« pĂ«rbĂ«jnĂ« praktikisht sisteme tĂ« plota llogaritĂ«se. MegjithatĂ«, FPGA pĂ«rputhen mirĂ« edhe me pajisje tĂ« tjera nĂ« sisteme hibride, dhe, sipas mendimit tonĂ«, ato sapo kanĂ« filluar tĂ« gjejnĂ« vendin e tyre legjitim nĂ« hierarkinĂ« e llogaritjeve.

Prandaj ne organizuam konferencën The Next FPGA Platform në San Jose më 22 Janar. Natyrisht, një nga furnizuesit kryesorë të FPGA në botë dhe pionier në këtë fushë është kompania Xilinx. Ivo Bolesens, zëvendës presidenti i lartë dhe drejtori teknik i Xilinx, foli në konferencë dhe na tregoi mendimet e tij të sotme lidhur me mënyrën se si Xilinx ndihmon në krijimin e sistemeve llogarituese të modifikueshme për qendrat e të dhënave.

ArkitektĂ«t sistemikĂ« dhe programuesit kanĂ« kaluar mjaft kohĂ« pĂ«r tĂ« arritur nĂ« njĂ« qendĂ«r tĂ« dhĂ«nash tĂ« ndryshme, ku do tĂ« pĂ«rfaqĂ«sohen kapacitetet kompjuterike tĂ« llojeve tĂ« ndryshme, qĂ« zgjidhin detyra rreth llogaritjes, ruajtjes dhe organizimit tĂ« rrjeteve. Kjo duket e nevojshme pĂ«r shkak se ndjekja e ligjit tĂ« Murit, duke pĂ«rdorur KMOPl tĂ« ndryshme, po bĂ«het gjithnjĂ« e mĂ« e vĂ«shtirĂ«. NdĂ«rkohĂ«, gjuha jonĂ« akoma Ă«shtĂ« e lidhur me CPU-nĂ«, dhe ne akoma flasim pĂ«r "shpejtimin e aplikacioneve", duke kuptuar pĂ«rmirĂ«simin e performancĂ«s sĂ« programeve krahasuar me atĂ« qĂ« mund tĂ« bĂ«het vetĂ«m me CPU-tĂ«. Pas pak kohĂ«sh, qendrat e tĂ« dhĂ«nave do tĂ« shndĂ«rrohen nĂ« grumbuj kapacitetesh llogaritĂ«se, ruajtjesh tĂ« dhĂ«nash dhe protokollesh qĂ« lidhin gjithçka sĂ« bashku, dhe ne do tĂ« kthehemi nĂ« terma si "llogaritje" dhe "aplikacione". Llogaritjet hibride do tĂ« bĂ«hen njĂ« normĂ« e njĂ«jtĂ« me shĂ«rbimet "nĂ« re" tĂ« sotme, tĂ« cilat funksionojnĂ« mbi bazĂ«n e zakonshme ose makinat virtuale, dhe nĂ« njĂ« çast do tĂ« pĂ«rdorim thjesht fjalĂ«n "llogaritje" pĂ«r tĂ« pĂ«rshkruar funksionimin e tyre. NĂ« njĂ« çast – dhe ndoshta ardhja e kĂ«saj ere do tĂ« nxisĂ« aktivisht FPGA-tĂ« – ne do ta quajmĂ« pĂ«rsĂ«ri kĂ«tĂ« pĂ«rpunim tĂ« dhĂ«nash.

Për të integruar FPGA-të në qendrat e të dhënave, do të nevojitet të ndryshohet mënyra e të menduarit. "Duke reflektuar mbi mënyrat për të acceleruar aplikacionet e sotme, është e nevojshme të zbulojmë thelbin e asaj se si ato zbatohen, cilat burime përdoren, për çfarë kohë shpenzohet," shpjegon Bolens. "Duhet të shqyrtojmë problemin e përgjithshëm që po përpiqeni të zgjidhni. Shumë aplikacione, që funksionojnë në qendrat e të dhënave sot, janë të shkallëzueshme, duke kapur një numër të madh burimesh. Merrni për shembull, mësimin e makinave, që përdor një sasi të madhe 'nyjesh llogaritëse'. Por duke folur për akcelerimin, duhet të mendojmë jo vetëm për akcelerimin e llogaritjeve, por edhe për akcelerimin e infrastrukturës."

Për shembuj, në ato operacione që kanë të bëjnë me mësimin e makinave që Bolens ka studiuar në praktikë, rreth 50% e kohës shpenzohet në transferimin e të dhënave nga njëra anë në tjetrën mes kapaciteteve të shpërndara llogaritative, dhe vetëm gjysma e mbetur e kohës shpenzohet në vetë llogaritjet.

KĂ«tu, mendoj se FPGA mund tĂ« ndihmojĂ«, sepse mund tĂ« sigurojmĂ« optimizimin e aspekteve tĂ« llogaritjes dhe tĂ« aspekteve tĂ« transmetimit tĂ« tĂ« dhĂ«nave pĂ«r aplikacionin. Dhe ne mund ta bĂ«jmĂ« kĂ«tĂ« nĂ« nivelin e infrastrukturĂ«s sĂ« pĂ«rgjithshme dhe nĂ« nivelin e çipit. Kjo Ă«shtĂ« njĂ« nga avantazhet e mĂ«dha tĂ« FPGA, qĂ« lejojnĂ« krijimin e rrjeteve tĂ« komunikimit pĂ«r nevojat specifike tĂ« aplikacionit. Duke vĂ«zhguar modelet tipike tĂ« lĂ«vizjes sĂ« tĂ« dhĂ«nave nĂ« detyrat qĂ« kanĂ« tĂ« bĂ«jnĂ« me inteligjencĂ«n artificiale, nuk shoh nevojĂ«n pĂ«r njĂ« arkitekturĂ« tĂ« ndĂ«rlikuar tĂ« bazuar nĂ« çswitch. Mund tĂ« ndĂ«rtojmĂ« njĂ« rrjet me njĂ« fluks tĂ« lartĂ« tĂ« tĂ« dhĂ«nave. E njĂ«jta gjĂ« vlen edhe pĂ«r detyrat e trajnimit tĂ« rrjeteve nervore – mund tĂ« ndĂ«rtojmĂ« njĂ« rrjet celular me madhĂ«si paketash qĂ« pĂ«rshtaten me detyrĂ«n specifike. Me pĂ«rdorimin e FPGA-s, mund tĂ« pĂ«rmasojmĂ« dhe pĂ«rshtatnim shumĂ« me saktĂ«si protokollet e transmetimit tĂ« tĂ« dhĂ«nave dhe topologjinĂ« e skemĂ«s pĂ«r aplikacionin specifik. Po ashtu, nĂ« rastin e mĂ«simit tĂ« makinave, Ă«shtĂ« e qartĂ« se nuk na duhen numra me pikĂ« fluturuese me saktĂ«si tĂ« dyfishtĂ«, dhe kĂ«tĂ« mund ta pĂ«rshtatim gjithashtu.

Dallimi midis FPGA dhe CPU ose ASIC-ve të especializuara është se të fundit programohen në prodhim dhe pas kësaj nuk mund të ndryshoni mendjen sa i përket llojeve të të dhënave të llogaritura ose elementeve të llogaritura, ose natyrës së fluksit të të dhënave që kalojnë përmes pajisjes. FPGA-të ju lejojnë të ndryshoni mendimin, nëse kushtet e punës ndryshojnë.

Në të kaluarën, ky avantazh kishte një kosto të lartë, kur programimi për FPGA ishte i destinuar për ata që nuk e kishin shpirtin e fortë. Duhet të hapni kompajlerët për FPGA, në mënyrë që ata të integrtohen më mirë me mjetet që përdoren nga programuesit për të krijuar aplikacione me llogaritje paralele për CPU në gjuhët C, C++ ose Python, dhe të dorëzoni një pjesë të punës në bibliotekat që shpejtojnë procedurat në FPGA. Kështu, merret me këtë, steku për mësimin e makinave Vitis, i cili është në themel të platformave të tilla për AI si Caffe dhe TensorFlow, dhe ka biblioteka për ekzekutimin e modeleve të zakonshme të AI-së ose për të shtuar aftësitë e FPGA për detyra të tilla si rikodimi i videove, njohja e objekteve në video, analiza e të dhënave, menaxhimi i rrezikut financiar dhe çdo bibliotekë të jashtme.

Ky kjo koncept nuk ndryshon shumë nga projekti CUDA i Nvidia, i lançuar dhjetë vjet më parë, i cili transferon llogaritë paralele në GPU-akseleratorë, apo nga paketa e mjeteve ROCm të AMD-së, apo nga premtimet e projektit Intel, OneAPI, i cili duhet të funksionojë në CPU, GPU dhe FPGA të ndryshme.

Çështja Ă«shtĂ« se si do tĂ« lidhen sĂ« bashku tĂ« gjitha kĂ«to mjete, nĂ« mĂ«nyrĂ« qĂ« çdo kĂ«ndvĂ«shtrim tĂ« mund tĂ« programojĂ« njĂ« sĂ«rĂ« kapacitetesh llogaritĂ«se sipas dĂ«shires sĂ« tij. Kjo Ă«shtĂ« e rĂ«ndĂ«sishme sepse FPGA-tĂ« janĂ« bĂ«rĂ« mĂ« tĂ« komplikuara, shumĂ« mĂ« tĂ« komplikuara se çdo CPU aktuale. Ato prodhohen me proceset teknologjike mĂ« tĂ« avancuara dhe me teknologjitĂ« mĂ« moderne tĂ« paketimit tĂ« çipave. Dhe ato do tĂ« gjejnĂ« njĂ« niĆŸĂ«, pasi ne nuk mund tĂ« humbasim mĂ« kohĂ«, para, energji dhe inteligjencĂ« – tĂ« gjitha kĂ«to janĂ« burime shumĂ« tĂ« shtrenjta.

«FPGA-tĂ« ofrojnĂ« avantazhe teknologjike,» thotĂ« Bolzens. «Dhe kjo nuk Ă«shtĂ« thjesht njĂ« reklamĂ« rreth adaptueshmĂ«risĂ« dhe ri-njoftueshmĂ«risĂ«. NĂ« tĂ« gjitha aplikacionet e rĂ«ndĂ«sishme – mĂ«simi nga makinat, analiza e grafikĂ«ve, tregtia me shpejtĂ«si tĂ« lartĂ«, etj. – ato kanĂ« mundĂ«sinĂ« tĂ« adaptojnĂ« jo vetĂ«m rrugĂ«n e pĂ«rhapjes sĂ« tĂ« dhĂ«nave pĂ«r njĂ« detyrĂ« specifike, por edhe arkitekturĂ«n e memories – mĂ«nyrĂ«n se si tĂ« dhĂ«nat lĂ«vizin brenda çipit. Po ashtu, nĂ« FPGA ka shumĂ« mĂ« tepĂ«r memory sesa nĂ« pajisje tĂ« tjera. Gjithashtu, duhet tĂ« merret parasysh se nĂ«se detyra nuk nĂ«ntĂ«rohet nĂ« njĂ« FPGA, ajo mund tĂ« shkallĂ«zohet nĂ« disa çipa, pa u pĂ«rballur me ato disavantazhe qĂ« ju presin kur shkallĂ«zoni detyrat nĂ« disa CPU ose GPU».

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster