Navigator Runtime 幫助您最大限度提高多內(nèi)核效率
多內(nèi)核導航器可提供高效率內(nèi)核間通信機制。硬件隊列與數(shù)據(jù)包 DMA 是 IPC 的基本構建塊。某些隊列經(jīng)過精心設計,可對 IPC 內(nèi)核產(chǎn)生中斷。多內(nèi)核導航器內(nèi)部的 uRISC 內(nèi)核使用可編程中斷通知功能實現(xiàn)自動隊列監(jiān)控與管理。多內(nèi)核導航器可充分限制軟件開銷,降低同步時延,并可提高 IPC 吞吐量。此外,它還支持無鎖編程模型。圖 2 是使用多內(nèi)核導航器的 IPC 示意圖。
圖 2:使用多內(nèi)核導航器實現(xiàn)處理器間的通信
Navigator Runtime 幫助您最大限度提高多內(nèi)核效率
雖然采用 TI KeyStone II 硅芯片架構已經(jīng)解決了多內(nèi)核挑戰(zhàn),但只有應用軟件開發(fā)人員充分發(fā)揮多內(nèi)核性能,才能真正實現(xiàn)這種硬件架構的各種優(yōu)勢。在軟件方面,TI 正在投資標準編程方法,讓支持多內(nèi)核導航器的 KeyStone II 的各項優(yōu)勢充分體現(xiàn)在應用中。行業(yè)中及學術界已經(jīng)涌現(xiàn)出大量有望成為標準的多內(nèi)核編程趨勢。所有這些方法的共同之處在于應用軟件開發(fā)人員先通過語言表達,采用特定手段描述其應用的并行性,然后再映射至底層運行時。該運行時可掌控將過程映射至底層硬件架構。
Navigator Runtime 是一個可擴展薄軟件層,可幫助多內(nèi)核導航器實現(xiàn)更高水平的并行編程性能,提高可擴展性、移植性及效率。對 AMP 編程挑戰(zhàn)而言,多內(nèi)核導航器和 Navigator Runtime 的完美結合是一款功能強大的獨特解決方案。
Navigator Runtime 的主要功能是將工作任務分配給多個內(nèi)核。先將工作任務放入待執(zhí)行的虛擬隊列,然后由嵌入在多內(nèi)核導航器硬件中的 uRISC 內(nèi)核執(zhí)行中央調(diào)度。調(diào)度器根據(jù)優(yōu)先級、原子性以及本地性選擇工作任務,然后分配給軟件分配器。軟件分配器是駐留在每一個內(nèi)核中的 Navigator Runtime 的必備部件。分配器隨即將每項工作任務發(fā)送至處理元件執(zhí)行,處理元件可能是內(nèi)核、AccelerationPac 或 I/O 端點中的線程。
充分發(fā)揮多內(nèi)核導航器的作用,工作任務制定者及使用者的抽象可由 Navigator Runtime 完成。將嵌入式 uRISC 內(nèi)核用于集中調(diào)度工作(無需消耗主 DSP 或 ARM® 內(nèi)核的 MIPS),可實現(xiàn)低開銷、低時延以及每個內(nèi)核 25 萬個任務的高吞吐量,實現(xiàn)無與倫比的并行編程性能。
評論