AN 824 FPGA SDK għall-Bord OpenCL
Pakkett ta' Appoġġ Floorplan
Gwida għall-Utent
Intel® FPGA SDK għal Gwida għall-Ottimizzazzjoni tal-Pakkett ta' Appoġġ tal-Bord OpenCL ™
L-Intel/® FPGA SDK għal OpenCL™ Board Support Package (BSP) Floorplan Optimization Guide tipprovdi linji gwida għall-ippjanar tal-art għal OpenCL) BSP. Jipprovdi wkoll gwida dwar kif tista 'takkwista ż-żerriegħa bażi bl-aħjar frekwenza operattiva massima medja u tevalwa l-effiċjenza fl-użu tar-riżorsi BSP.
Dan id-dokument jassumi li inti familjari mal-kunċetti OpenCL(2) kif deskritt fl-Ispeċifikazzjoni OpenCL verżjoni 1.0 mill-Grupp Khronos.
Fluss ta' Kumpilazzjoni OpenCL BSP
OpenCL BSP jappoġġja t-tipi li ġejjin ta 'flussi ta' kumpilazzjoni:
- Kumpilazzjoni fissa [–bsp-flow flat]: Twettaq kumpilazzjoni fissa tad-disinn kollu (BSP flimkien mal-ħardwer iġġenerat mill-qalba).
- Base compile [–bsp-flow base]: Twettaq kumpilazzjoni bażi billi tuża restrizzjonijiet LogicLock minn base.qsf file. Il-mira tal-arloġġ tal-qalba hija rilassata sabiex il-ħardwer tal-BSP ikollu aktar libertà biex jilħaq il-ħin. Database.qar tinħoloq biex tippreserva l-ħardwer BSP, li huwa r-reġjun statiku.
- Importa kompila [ ]: Jirrestawra r-reġjun statiku magħluq tal-ħin mid-database base.qar u jikkompila biss il-ħardwer iġġenerat mill-kernel. Iżid ukoll il-mira tal-arloġġ tal-qalba biex tikseb l-aħjar frekwenza operattiva massima tal-qalba (fmax).
OpenCL BSP Floorplan Partition
OpenCL BSP floorplan huwa prinċipalment maqsum fiż-żewġ reġjuni li ġejjin:
- Reġjun statiku: Jirrappreżenta r-reġjun li għandu ħardwer relatat mal-BSP li jibqa' statiku. Iż-żmien huwa magħluq għal dan ir-reġjun waqt il-kumpilazzjoni bażi. B'mod ġenerali, l-għan huwa li jiġu minimizzati r-riżorsi taċ-ċippa użati minn dan ir-reġjun biex jagħlqu l-ħin.
- Reġjun tal-kernel: Jirrappreżenta r-reġjun tar-rikonfigurazzjoni parzjali (PR) li huwa riżervat għall-modulu freeze_wrapper_inst|kernel_system_inst, li fih il-kernel. B'mod ġenerali, l-għan huwa li r-riżorsi taċ-ċippa jiġu riservati sa punt massimu għal dan ir-reġjun.
- L-Intel FPGA SDK għal OpenCL huwa bbażat fuq Speċifikazzjoni Khronos ippubblikata, u għadda mill-Proċess tal-Ittestjar tal-Konformità Khronos. L-istatus ta' konformità attwali jista' jinstab fuq www.khronos.org/conformance.
- OpenCL u l-logo OpenCL huma trademarks ta’ Apple Inc. u użati bil-permess tal-Khronos Group™.
Korporazzjoni Intel. Id-drittijiet kollha riżervati. Intel, il-logo Intel, u marki oħra Intel huma trademarks ta' Intel Corporation jew is-sussidjarji tagħha. Intel tiggarantixxi l-prestazzjoni tal-prodotti FPGA u semikondutturi tagħha skont l-ispeċifikazzjonijiet attwali skont il-garanzija standard ta 'Intel, iżda tirriżerva d-dritt li tagħmel bidliet fi kwalunkwe prodott u servizz fi kwalunkwe ħin mingħajr avviż. Intel ma tassumi l-ebda responsabbiltà jew responsabbiltà li tirriżulta mill-applikazzjoni jew l-użu ta' kwalunkwe informazzjoni, prodott jew servizz deskritt hawnhekk ħlief kif miftiehem espressament bil-miktub minn Intel. Il-klijenti Intel huma avżati biex jiksbu l-aħħar verżjoni tal-ispeċifikazzjonijiet tal-apparat qabel ma jiddependu fuq kwalunkwe informazzjoni ppubblikata u qabel ma jagħmlu ordnijiet għal prodotti jew servizzi.
*Ismijiet u marki oħra jistgħu jiġu mitluba bħala proprjetà ta’ ħaddieħor.
Linji gwida għall-OpenCL BSP Floorplanning
- Ibda b'kumpilazzjoni fissa biex tifhem fejn il-komponenti ewlenin kollha tal-BSP jitqiegħdu b'mod naturali (speċjalment il-blokki IP b'konnessjonijiet I/O bħal PCIe jew DDR). Filwaqt li tfassal il-BSP, jista 'jkollok tikkunsidra li tistabbilixxi pipeline stages bejn l-IPs biex tagħlaq iż-żmien. L-ewwel għandek tmexxi sweep taż-żerriegħa tal-kompilazzjoni ċatta biex tidentifika l-mogħdijiet rikorrenti li jonqsu, u mbagħad tipprova tirranġahom.
Tip: — Rata tajba ta' għeluq ta' ħin fuq sweeps ta' żerriegħa ta' kumpilazzjoni fissa se jkollha ċans akbar li tagħlaq iż-żmien ta' kumpilazzjoni bażi.
— Jekk tosserva fallimenti konsistenti f'mm_interconnect* (komponent miżjud minn Qsys), imbagħad iftaħ is-Sistema b'Qsys Interconnect viewer u osserva l-kumplessità tal-interkonnessjoni li tfalli. Tista 'żżid pipelining flipflops fil- viewer biex ittejjeb il-ħin. Jekk xorta ma tistax tindirizza l-kwistjoni, jista 'jkollok tkisser il-passaġġ kritiku mm_interconnect* billi żżid pontijiet tal-pipeline Avalon. - Matul il-kumpilazzjoni bażi, ibda b'LogicLock fuq ir-reġjun tal-kernel li fih freeze_wrapper_inst|kernel_system_inst. Bla ebda restrizzjonijiet oħra, Intel Quartus Prime jista 'jpoġġi l-ħardwer BSP liberament fir-reġjun statiku li jifdal taċ-ċippa. Uża l-pjanifikatur tal-kompilazzjoni fissa u taċ-ċippa biex tidentifika d-daqs u l-post tal-ħardwer BSP, bħal PCIe u DDR. Imbagħad, irriżerva r-reġjun tal-qalba billi tuża LogicLock filwaqt li tevita ż-żoni raggruppati ewlenin tal-ħardwer BSP.
Tip: Jekk il-familja taċ-ċippa użata hija l-istess bħall-pjattaforma ta 'referenza u jekk il-komponenti BSP huma simili, jista' jkun aktar mgħaġġel li tibda bir-reġjuni LogicLock għal freeze_wrapper_inst|kernel_system_inst li jintbagħat mal-BSP ta 'referenza OpenCL u taħdem permezz tal-fallimenti. - Tista' żżid il-komponenti addizzjonali li ġejjin mal-BSP tiegħek:
— Banek tal-memorja: Jekk iżżid aktar banek tal-memorja, għandek tidentifika l-post tal-bank I/O peress li jista’ jkollok bżonn iżżid pontijiet tal-pipeline biex tilħaq iż-żmien.
— Kanali I/O: Tista 'żżid kanali I/O bħal vidjo, Ethernet, jew interface serjali. Jekk iżżid kanali I/O, għandek tidentifika l-post tal-bank I/O peress li jista’ jkollok bżonn tapplika reġjuni ġodda ta’ LogicLock għall-pipelining jekk iż-żmien tal-għeluq ikun diffiċli.
Tip: Jekk għandek bżonn iżżid pontijiet tal-pipeline (eżample, minħabba dewmien kbir ta 'routing li jikkawża fallimenti ta' ħin), imbagħad ikkunsidra d-distanza tar-rotta mis-sors għal loġika tad-destinazzjoni fiċ-ċippa u rilaxx xi spazju riżervat għar-reġjun tal-qalba. - Segwi dawn il-linji gwida ġenerali meta tirriserva r-reġjuni LogicLock għall-qalba:
— Ipprova tpoġġi l-kolonni DSP kollha fis-sistema_kernel sakemm ma jkunx meħtieġ mill-BSP.
— Ipprova jirriżerva aktar riżorsi għas-sistema_kernel.
— Ipprova jżomm in-numru ta' talji fir-reġjun tal-qalba għal minimu.
Il-figura li ġejja turi talja li ġiet miżjuda biex tpoġġi pont ta 'pipeline bejn PCIe u DDR bank.
Figura 1. OpenCL BSP Floorplan għal Intel Arria® 10 GX fir-Rilaxx 17.0
Linji Gwida għall-Frekwenza Operattiva Massima
Il-frekwenza operattiva massima (fmax) miksuba mill-qlub tiddependi ħafna fuq il-veloċità tal-FPGA peress li ħafna mill-IPs għandhom diġà jiġu ottimizzati. Madankollu, jista 'jkun hemm xi fmax jitlef skond il-pjan ta' l-art BSP. Per example, normalment in-numru ta 'cut-outs fir-reġjun tal-qalba tal-BSP jaffettwa l-qalba fmax.
Kif muri fil-figura li ġejja, biex takkwista l-aħjar żerriegħa bażi li tagħti l-aqwa fmax medja:
- Wettaq żerriegħa żerriegħa fuq il-kumpilazzjoni bażi minflok tagħżel l-ewwel żerriegħa bażi li tissodisfa l-ħin.
- Wettaq kumpilazzjoni ta 'importazzjoni (billi tuża ftit qlub mill-eżample disinji) fuq iż-żerriegħa tal-bażi kollha li tgħaddi.
- Ikkalkula l-fmax medju għaż-żerriegħa bażi kollha.
- Agħżel iż-żerriegħa bażi li tagħti l-ogħla fmax medja.
Iż-żerriegħa bażi bl-aqwa fmax medja hija kandidat tajjeb għar-rilaxx b'BSP. Jekk tiddeċiedi li ssegwi approċċ differenti mill-passi rakkomandati, tista' tosserva varjazzjoni ta' 5-10% fil-fmax tal-proċess tal-kumpilazzjoni tal-importazzjoni tal-qalba.
Figura 2. Identifikazzjoni tal-Aqwa Żerriegħa Bażi
- Biex tifhem kemm il-qalba tista 'taħdem malajr mingħajr restrizzjonijiet tal-pjan ta' l-art:
1. Wettaq kumpilazzjoni ċatta tal-qalba u osserva l-fmax.
2. Wettaq kumpilazzjoni ta' importazzjoni fuq l-istess qalba u osserva l-fmax.
3. Qabbel ir-riżultati fmax.
Minħabba r-restrizzjonijiet tal-pjan tal-pjan, l-import compile fmax huwa dejjem aktar baxx minn flat compile fmax. Biex tevita l-istorbju taż-żerriegħa, ikkumpila l-qalba b'aktar żerriegħa bażi u ikkunsidra fmax medja waqt li tqabbel ir-riżultati fmax. - Qatt tqabbel kernel fmax minn kumpilazzjoni bażi ma' kumpilazzjoni fissa jew ta' importazzjoni. Il-miri tal-arloġġ tal-kernel huma rilassati waqt il-kumpilazzjoni tal-bażi u għalhekk, qatt mhu se tikseb riżultati tajbin.
- Osserva l-passaġġ kritiku tal-arloġġ tal-qalba fil-kumpilazzjoni bażi jew tal-importazzjoni. Jekk il-mogħdija kritika qed taqsam mill-qalba għar-reġjun statiku fil-pjan tal-paviment, ibdel il-pjan tal-paviment jew mexxi ftit aktar żerriegħa bażi biex tevita din il-mogħdija kritika.
Linji Gwida għall-Evalwazzjoni tal-Effiċjenza fl-Użu tar-Riżorsi tal-BSP
Iktar ma jkun għoli l-perċentwal tal-użu tar-riżorsitage, l-aħjar l-utilizzazzjoni taż-żona fiż-żona statika tal-BSP tiegħek. Perċentwal għoli ta' użu tar-riżorsitage jimplika wkoll li aktar riżorsi huma disponibbli għar-reġjun tal-qalba.
Segwi l-passi hawn taħt biex tikkalkula l-perċentwal tal-użu tar-riżorsitage tal-BSP tiegħek:
- Ikseb il-valuri għar-riżorsi kollha fl-FPGA minn top.fit.rpt jew base.fit.rpt disponibbli taħt it-taqsima Statistika tal-Partizzjoni tar-rapport tal-Fitter.
- Naqqas il-valur għal "freeze_wrapper_inst|kernel_system_inst" (reġjun tal-kernel).
Tip:
Iffoka aktar fuq il-valuri tal-modulu loġiku adattiv (ALM) milli fuq il-valuri ta 'riżorsi oħra. Tiżgura li l-perċentwali ta 'utilizzazzjoni tar-riżorsitage għal ALM huwa eqreb tar-referenza OpenCL BSP. Perċentwal għoli ħafnatage għall-ALM jista' jwassal għal konġestjoni, li tista' żżid il-ħin tal-kumpilazzjoni u tintroduċi konġestjonijiet tar-rotot f'kernels kumplessi. Madankollu, tista 'dejjem iżżid jew tnaqqas iż-żona tar-reġjun statiku, u tosserva l-ħin tal-kumpilazzjoni u fmax.
It-tabella li ġejja tirrifletti l-użu tar-riżorsi OpenCL BSP tal-apparati Arria ® 10 GX fir-rilaxx 17.0.
Tabella 1.
Użu tar-Riżorsi OpenCL BSP ta' apparati IntelArria 10 GX fir-Rilaxx 17.0
Total Disponibbli | Riżervat għal Kernel | Disponibbli għal BSP | Użat minn BSP | 0/0 | |
ALM | 427200 | 393800 | 33400 | 23818. | 71.% |
Reġistri | 1708800 | 1575200 | 133600 | 38913 | 29.% |
M2OK | 2713 | 2534 | 179 | 134 | 75.% |
DSP | 1518 | 1518 | 0 | 0 | N/A |
Osserva li l-ippjanar tal-art huwa esegwit b'tali mod li r-reġjun statiku ma jkollu ebda blokk DSP.
Storja tar-Reviżjoni tad-Dokument
Tabella 2.
Storja ta 'Reviżjoni tad-Dokument tal-Intel FPGA SDK għall-Gwida għall-Ottimizzazzjoni tal-Pakkett ta' Appoġġ tal-Bord OpenCL
Data | Verżjoni | Bidliet |
Awwissu-17 | Rilaxx inizjali. |
Verżjoni Online
Ibgħat Feedback
ID: 683312
AN-824
Verżjoni: 2017.08.08
AN 824: Intel® FPGA SDK għall-Bord OpenCL™
Gwida għall-Ottimizzazzjoni tal-Plan tal-Pakkett ta' Appoġġ
Dokumenti / Riżorsi
![]() |
intel AN 824 FPGA SDK għall-Pakkett ta' Appoġġ tal-Bord OpenCL Floorplan [pdfGwida għall-Utent AN 824 FPGA SDK għall-Pakkett ta' Appoġġ tal-Bord OpenCL Floorplan, AN 824, FPGA SDK għal Pakkett ta' Appoġġ tal-Bord OpenCL Floorplan, Pakkett ta' Appoġġ tal-Bord OpenCL Floorplan, Pakkett ta' Appoġġ tal-Bord Floorplan, Pakkett ta' Appoġġ Floorplan, Pakkett Floorplan, Floorplan |