一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

進(jìn)迭時(shí)空同構(gòu)融合RISC-V AI CPU的Triton算子編譯器實(shí)踐

進(jìn)迭時(shí)空 ? 2025-07-15 09:04 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Triton是由OpenAI開(kāi)發(fā)的一個(gè)開(kāi)源編程語(yǔ)言和編譯器,旨在簡(jiǎn)化高性能GPU內(nèi)核的編寫。它提供了類似Python的語(yǔ)法,并通過(guò)高級(jí)抽象降低了 GPU 編程的復(fù)雜性,同時(shí)保持了高性能。目前Pytorch已能做到100%替換CUDA,國(guó)內(nèi)也有智源研究院主導(dǎo)的FlagGems通用算子庫(kù)試圖構(gòu)建起不依賴CUDA的AI計(jì)算生態(tài),截至今日,F(xiàn)lagGems已進(jìn)入Pytorch基金會(huì)生態(tài)項(xiàng)目體系。Triton生態(tài)內(nèi)少有CPU架構(gòu)的實(shí)踐,且多面向Host-Device的異構(gòu)方案,進(jìn)迭時(shí)空通過(guò)同構(gòu)融合RISC-V AI CPU技術(shù),結(jié)合Triton輕量化的交互式編程模式,將構(gòu)建起比肩Triton GPGPU的AI高性能編程方案,從而推動(dòng)AI應(yīng)用的快速規(guī)模化落地。

為什么是Triton

AI高性能編程模型趨于統(tǒng)一,多核并行的調(diào)度+Tile base的kernel基本成為固定范式。

CUDA的話語(yǔ)權(quán)過(guò)高,為走出新AI架構(gòu)的路,需要有獨(dú)立的前端編程語(yǔ)言支撐,而Triton DSL的社區(qū)活躍度足夠高,也有相當(dāng)數(shù)量的大模型、CNN模型項(xiàng)目采用了Triton作為算子編程語(yǔ)言。

Pytorch的成功表明,Python First讓更多開(kāi)發(fā)者參與生態(tài)共建,降低介入門檻,也有利于新AI架構(gòu)輸出自己的性能優(yōu)化方案。

同構(gòu)融合AI

常見(jiàn)的Host-Device的異構(gòu)Triton方案,使得Triton算子編程的調(diào)試?yán)щy,內(nèi)存模型復(fù)雜,不利于開(kāi)發(fā)者靈活的實(shí)現(xiàn)自己的想法,而搭建于傳統(tǒng)CPU之上的Triton-CPU方案,也缺乏在AI高性能計(jì)算上的硬件支持,例如核內(nèi)TensorCore、多核通信與訪存優(yōu)化、多卡互聯(lián)等。

進(jìn)迭時(shí)空踐行的同構(gòu)融合技術(shù),創(chuàng)新性地在CPU內(nèi)集成TensorCore,以RISC-V指令集為統(tǒng)一的軟硬件接口,驅(qū)動(dòng)Scalar標(biāo)量算力、Vector向量算力和 Matrix AI算力,支持軟件和AI模型同時(shí)在RISC-V AI核上運(yùn)行,并通過(guò)程序正常跳轉(zhuǎn)實(shí)現(xiàn)軟件和AI模型之間的事件和數(shù)據(jù)交互,進(jìn)而完成整個(gè)AI應(yīng)用執(zhí)行。

基于同構(gòu)融合RISC-V AI CPU架構(gòu)的Triton方案,在編程調(diào)試視角看仍然類似于傳統(tǒng)CPU,并且消除了Host-Device的概念,采用統(tǒng)一內(nèi)存,調(diào)用側(cè)與執(zhí)行側(cè)是Linux軟件多線程的概念,這將極大的降低高性能算子的編程與調(diào)試難度。同時(shí),在確保編程易用性的前提下,進(jìn)迭時(shí)空通過(guò)集成TensorCore、緊密耦合內(nèi)存、Core-to-Core coherence、Cluster-to-Cluster coherence、多核調(diào)度優(yōu)化、AI編譯器優(yōu)化等軟硬件創(chuàng)新,處理絕大部分性能優(yōu)化點(diǎn),最終交給用戶一個(gè)上手即用的算子開(kāi)發(fā)工具鏈。

9a8fc690-6117-11f0-9cf1-92fbcf53809c.png

RISC-V AI CPU Triton軟件棧

前端層面,支持Pytorch Triton Kernel以及第三方Triton Kernel,例如FlagGems,支持Triton DSL的全部語(yǔ)義。

中端層面,通過(guò)TTIR、TTSIR(Triton Shared)至標(biāo)準(zhǔn)Linag IR,不做任何Dialect擴(kuò)展。

后端層面,先驗(yàn)調(diào)優(yōu)的矩陣乘kernel與vector.contract并存,保證矩陣計(jì)算高效的同時(shí),釋放更多vector codegen的可能性。

9aa24c98-6117-11f0-9cf1-92fbcf53809c.png

SpineTriton(即進(jìn)迭時(shí)空Triton解決方案)作為Triton的第三方后端,對(duì)Pytorch提供RISCV AI-CPU底層加速,兼容社區(qū)已有的Triton Kernel,充分融入現(xiàn)有基于Triton構(gòu)建的AI加速生態(tài)。同時(shí),針對(duì)AI-CPU核內(nèi)擴(kuò)展指令、Core-to-Core高速緩存、異步訪存等特性,對(duì)tl.make_block_ptr進(jìn)行了專門特化,開(kāi)發(fā)者在使用Triton DSL中的塊級(jí)訪存與計(jì)算時(shí),獲得更大的優(yōu)化收益。

RISC-V AI CPU Triton實(shí)踐

前端

以一個(gè)矩陣乘的Triton Kernel為例,使用tl.make_block_ptr進(jìn)行訪存與計(jì)算。

pid_m = tl.program_id(0)pid_n = tl.program_id(1)# load matmul a and ba_block_ptr = tl.make_block_ptr( base=a_ptr, shape=[M, K], strides=[stride_am, stride_ak], offsets=[pid_m * BLOCK_SIZE_M, 0], block_shape=[BLOCK_SIZE_M, BLOCK_SIZE_K], order=[1, 0])b_block_ptr = ...accumulator = tl.zeros((BLOCK_SIZE_M, BLOCK_SIZE_N), dtype=tl.float32)for k in range(0, tl.cdiv(K, BLOCK_SIZE_K)): a = tl.load(a_block_ptr, boundary_check=(0, 1)) b = tl.load(b_block_ptr, boundary_check=(0, 1)) accumulator += tl.dot(a, b, allow_tf32=False) a_block_ptr = tl.advance(a_block_ptr, (0, BLOCK_SIZE_K)) b_block_ptr = tl.advance(b_block_ptr, (BLOCK_SIZE_K, 0))c = accumulator.to(dot_out_dtype)# maybe some epilogue for cc_block_ptr = tl.make_block_ptr( base=c_ptr, shape=[M, N], strides=[stride_cm, stride_cn], offsets=[pid_m * BLOCK_SIZE_M, pid_n * BLOCK_SIZE_N], block_shape=[BLOCK_SIZE_M, BLOCK_SIZE_N], order=[1, 0],)tl.store(c_block_ptr, c, boundary_check=(0, 1))

上文Triton Kernel描述的矩陣乘計(jì)算對(duì)應(yīng)于下圖計(jì)算過(guò)程,當(dāng)以一個(gè)Cluster進(jìn)行捆綁調(diào)度時(shí),SPMD中的Single Program指向一個(gè)Cluster上的執(zhí)行程序,通過(guò)Program ID區(qū)分輸入與輸出數(shù)據(jù)位置。以開(kāi)發(fā)者的視角看,Cluster上的編程是線性的,且不需要關(guān)心異步數(shù)據(jù)的訪問(wèn)邏輯,后端編譯器將分析用戶代碼邏輯的潛在并行性,在Cluster內(nèi)完成并行化,以及使用高速緩存合并Cluster內(nèi)多核的訪存。

9aad599e-6117-11f0-9cf1-92fbcf53809c.png

中后端

在矩陣乘內(nèi)部計(jì)算過(guò)程的轉(zhuǎn)換時(shí),將完整的tl.dot即linalg.matmul進(jìn)行分塊分析,充分使用寄存器資源與近核緩存,在中端轉(zhuǎn)為linalg.mmt4d、linalg.pack、linalg.unpack及結(jié)構(gòu)化循環(huán)體的表示。linalg.mmt4d與手寫kernel直接映射并利用到Tensor算力,而其他的算子,則采用affine進(jìn)行向量化使用Vector算力。

由于采用了IME的方式擴(kuò)展AI指令(參考進(jìn)迭時(shí)空AI擴(kuò)展指令Spec,https://github.com/spacemit-com/riscv-ime-extension-spec),在linalg.mmt4d這樣的ukernel的轉(zhuǎn)換過(guò)程時(shí),可以直接使用vector進(jìn)行交互,避免在延遲更高的存儲(chǔ)結(jié)構(gòu)上進(jìn)行交互,這是IME的一大優(yōu)點(diǎn)。

// load b// %acc: vector<16x32xf32>%0 = vector.load [...] : memref, vector<4x32xf32>// load a%1 = vector.load [...] : memref, vector<2x32xf32>// vfmadot -> 2x8x4 @ 4x8x4 => 2x4x8x8%2 = vector.contract {...} %1, %0, %acc : vector<2x32xf32>, vector<4x32xf32> into vector<16x32xf32>

在mlir-llvm的結(jié)合部分,通過(guò)vector.contract構(gòu)造了大量先驗(yàn)的手寫匯編序列,以確保最終性能的可靠性。

結(jié)束語(yǔ)

Triton目前仍然是一個(gè)GPGPU架構(gòu)主導(dǎo)的Python DSL及算子編譯器,在CPU架構(gòu)上發(fā)展緩慢,僅存在一些在x86架構(gòu)下的TritonCPU編程的社區(qū)工作,且不是最優(yōu)適配。RISC-V同構(gòu)融合AI算力的方式,利于打破算子內(nèi)多種計(jì)算模式(Scalar、Vector、Tensor)的隔閡,同時(shí)統(tǒng)一內(nèi)存、統(tǒng)一OS的軟硬件架構(gòu),使得調(diào)試難度降低,系統(tǒng)內(nèi)多種軟硬件資源的交互難度降低。此外,未來(lái)也將逐步開(kāi)源SpineTriton的軟件棧部分,共同建設(shè)RISCV Triton高性能編程社區(qū)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • gpu
    gpu
    +關(guān)注

    關(guān)注

    28

    文章

    4948

    瀏覽量

    131253
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1662

    瀏覽量

    50228
  • RISC-V
    +關(guān)注

    關(guān)注

    46

    文章

    2573

    瀏覽量

    48838
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    RISC-V架構(gòu)下AI融合算力及其軟件棧實(shí)踐

    面對(duì)未來(lái)大模型(LLM)、AIGC等智能化浪潮的挑戰(zhàn),進(jìn)時(shí)空RISC-V方向全面布局,通過(guò)精心設(shè)計(jì)的RISC-VDSA架構(gòu)以及軟硬一體的
    的頭像 發(fā)表于 06-06 17:04 ?449次閱讀
    <b class='flag-5'>RISC-V</b>架構(gòu)下<b class='flag-5'>AI</b><b class='flag-5'>融合</b>算力及其軟件棧<b class='flag-5'>實(shí)踐</b>

    RISC-V架構(gòu)下的編譯器自動(dòng)向量化

    進(jìn)時(shí)空專注于研發(fā)基于RISC-V的高性能新AICPU,對(duì)于充分發(fā)揮CPU核的性能而言,編譯器
    的頭像 發(fā)表于 06-06 16:59 ?384次閱讀
    <b class='flag-5'>RISC-V</b>架構(gòu)下的<b class='flag-5'>編譯器</b>自動(dòng)向量化

    進(jìn)時(shí)空同構(gòu)融合技術(shù)加速大模型AI應(yīng)用創(chuàng)新

    復(fù)雜的異構(gòu)調(diào)度系統(tǒng)來(lái)協(xié)調(diào)CPU和XPU的額外數(shù)據(jù)交互和同步。進(jìn)時(shí)空踐行的同構(gòu)融合技術(shù),創(chuàng)新性地
    的頭像 發(fā)表于 06-06 16:55 ?451次閱讀
    <b class='flag-5'>進(jìn)</b><b class='flag-5'>迭</b><b class='flag-5'>時(shí)空</b><b class='flag-5'>同構(gòu)</b><b class='flag-5'>融合</b>技術(shù)加速大模型<b class='flag-5'>AI</b>應(yīng)用創(chuàng)新

    高校賽事 | 進(jìn)時(shí)空攜手藍(lán)橋杯,誠(chéng)邀全國(guó)高校學(xué)子共啟RISC-V人工智能應(yīng)用創(chuàng)新賽道

    以下文章來(lái)源于RISC-V先鋒,作者進(jìn)時(shí)空2025年5月12日,第十六屆藍(lán)橋杯數(shù)字科技創(chuàng)新(RISC-V應(yīng)用創(chuàng)新)命題賽正式啟動(dòng)。本次大賽
    的頭像 發(fā)表于 06-06 16:55 ?903次閱讀
    高校賽事 | <b class='flag-5'>進(jìn)</b><b class='flag-5'>迭</b><b class='flag-5'>時(shí)空</b>攜手藍(lán)橋杯,誠(chéng)邀全國(guó)高校學(xué)子共啟<b class='flag-5'>RISC-V</b>人工智能應(yīng)用創(chuàng)新賽道

    大象機(jī)器人攜手進(jìn)時(shí)空推出 RISC-V 全棧開(kāi)源六軸機(jī)械臂產(chǎn)品

    識(shí)別聯(lián)調(diào)。 進(jìn)時(shí)空致力于為智能機(jī)器人提供完整全棧優(yōu)化的RISC-V AI軟硬件解決方案,第一代RIS
    發(fā)表于 04-25 17:59

    大象機(jī)器人×進(jìn)時(shí)空聯(lián)合發(fā)布全球首款RISC-V全棧開(kāi)源小六軸機(jī)械臂

    ? ? 在全球AI與機(jī)器人技術(shù)高速發(fā)展的浪潮中,中國(guó)公司始終堅(jiān)定走在自研創(chuàng)新的道路上。 ? ? 4月25日,大象機(jī)器人與 國(guó)內(nèi)RISC-V AI CPU芯片領(lǐng)軍企業(yè)【
    的頭像 發(fā)表于 04-25 14:19 ?779次閱讀
    大象機(jī)器人×<b class='flag-5'>進(jìn)</b><b class='flag-5'>迭</b><b class='flag-5'>時(shí)空</b>聯(lián)合發(fā)布全球首款<b class='flag-5'>RISC-V</b>全棧開(kāi)源小六軸機(jī)械臂

    香蕉派 BPI-CM6 工業(yè)級(jí)核心板采用進(jìn)時(shí)空K1 8核 RISC-V 芯片開(kāi)發(fā)

    。 SpacemiT K1主要用于單板計(jì)算機(jī)、網(wǎng)絡(luò)存儲(chǔ)、云計(jì)算機(jī)、智能機(jī)器人、工業(yè)控制、邊緣計(jì)算機(jī)等。 主要特點(diǎn) 進(jìn)時(shí)空8核RISC-V芯片,CP
    發(fā)表于 03-25 14:40

    RISC-V+OpenHarmony5.0:進(jìn)時(shí)空與中科院共筑數(shù)字世界新基石

    解決方案的推出,標(biāo)志著RISC-V架構(gòu)與OpenHarmony操作系統(tǒng)的深度融合,為數(shù)字世界的未來(lái)發(fā)展奠定了堅(jiān)實(shí)的基礎(chǔ)。RISC-V以其靈活、開(kāi)源的特性,為芯片設(shè)計(jì)提供了全新的思路;而OpenHarmony5.0則以其開(kāi)放、可裁
    的頭像 發(fā)表于 02-19 11:30 ?762次閱讀

    進(jìn)時(shí)空完成A+輪數(shù)億元融資 加速RISC-V AI CPU產(chǎn)品迭代

    及生態(tài)建設(shè)。在成立至今三年的快速發(fā)展中,進(jìn)時(shí)空布局了RISC-V高性能CPU核、AI-CPU
    的頭像 發(fā)表于 02-18 14:22 ?480次閱讀
    <b class='flag-5'>進(jìn)</b><b class='flag-5'>迭</b><b class='flag-5'>時(shí)空</b>完成A+輪數(shù)億元融資 加速<b class='flag-5'>RISC-V</b> <b class='flag-5'>AI</b> <b class='flag-5'>CPU</b>產(chǎn)品迭代

    進(jìn)時(shí)空亮相RISC-V產(chǎn)業(yè)發(fā)展大會(huì):新AI CPU引領(lǐng)大模型時(shí)代

    12月28日,以“發(fā)揮標(biāo)準(zhǔn)優(yōu)勢(shì),繁榮產(chǎn)業(yè)發(fā)展”為主題的RISC-V產(chǎn)業(yè)發(fā)展大會(huì)在北京亦莊經(jīng)開(kāi)區(qū)通明湖會(huì)展中心舉行。作為基于新一代RISC-V架構(gòu)的計(jì)算生態(tài)企業(yè),進(jìn)
    的頭像 發(fā)表于 12-31 17:32 ?820次閱讀
    <b class='flag-5'>進(jìn)</b><b class='flag-5'>迭</b><b class='flag-5'>時(shí)空</b>亮相<b class='flag-5'>RISC-V</b>產(chǎn)業(yè)發(fā)展大會(huì):新<b class='flag-5'>AI</b> <b class='flag-5'>CPU</b>引領(lǐng)大模型時(shí)代

    Triton編譯器功能介紹 Triton編譯器使用教程

    Triton 是一個(gè)開(kāi)源的編譯器前端,它支持多種編程語(yǔ)言,包括 C、C++、Fortran 和 Ada。Triton 旨在提供一個(gè)可擴(kuò)展和可定制的編譯器框架,允許開(kāi)發(fā)者添加新的編程語(yǔ)言
    的頭像 發(fā)表于 12-24 17:23 ?1688次閱讀

    業(yè)內(nèi)首顆8核RISC-V終端AI CPU量產(chǎn)芯片K1,進(jìn)時(shí)空與中國(guó)移動(dòng)用芯共創(chuàng)AI+時(shí)代

    10月11日-13日,以“智煥新生共創(chuàng)AI+時(shí)代”為主題的2024中國(guó)移動(dòng)全球合作伙伴大會(huì)在廣州盛大舉行。作為中國(guó)移動(dòng)合作伙伴,進(jìn)時(shí)空RISC-
    的頭像 發(fā)表于 10-16 08:09 ?1781次閱讀
    業(yè)內(nèi)首顆8核<b class='flag-5'>RISC-V</b>終端<b class='flag-5'>AI</b> <b class='flag-5'>CPU</b>量產(chǎn)芯片K1,<b class='flag-5'>進(jìn)</b><b class='flag-5'>迭</b><b class='flag-5'>時(shí)空</b>與中國(guó)移動(dòng)用芯共創(chuàng)<b class='flag-5'>AI</b>+時(shí)代

    Banana Pi BPI-F3 進(jìn)時(shí)空RISC-V架構(gòu)下,AI融合算力及其軟件棧實(shí)踐

    面對(duì)未來(lái)大模型(LLM)、AIGC等智能化浪潮的挑戰(zhàn),進(jìn)時(shí)空RISC-V方向全面布局,通過(guò)精心設(shè)計(jì)的RISC-V DSA架構(gòu)以及軟硬一體
    的頭像 發(fā)表于 09-07 14:01 ?1976次閱讀
    Banana Pi BPI-F3 <b class='flag-5'>進(jìn)</b><b class='flag-5'>迭</b><b class='flag-5'>時(shí)空</b><b class='flag-5'>RISC-V</b>架構(gòu)下,<b class='flag-5'>AI</b><b class='flag-5'>融合</b>算力及其軟件棧<b class='flag-5'>實(shí)踐</b>

    RISC-V架構(gòu)下DSA-AI算力的更多可能性:Banana Pi BPI-F3進(jìn)時(shí)空

    Banana Pi BPI-F3 進(jìn)時(shí)空 K1開(kāi)發(fā)板AI人工智能應(yīng)用:四路視頻同時(shí)推理演示:香蕉派BPI-F3是一款工業(yè)級(jí) 8核RISC-V
    的頭像 發(fā)表于 09-07 10:30 ?3332次閱讀
    <b class='flag-5'>RISC-V</b>架構(gòu)下DSA-<b class='flag-5'>AI</b>算力的更多可能性:Banana Pi BPI-F3<b class='flag-5'>進(jìn)</b><b class='flag-5'>迭</b><b class='flag-5'>時(shí)空</b>

    進(jìn)時(shí)空引領(lǐng)AI CPU創(chuàng)新,Key Stone K1芯片訂單破萬(wàn)

    在近日召開(kāi)的第四屆滴水湖中國(guó)RISC-V產(chǎn)業(yè)論壇上,進(jìn)時(shí)空公司以其卓越的研發(fā)實(shí)力和前瞻性的產(chǎn)品布局吸引了廣泛關(guān)注。作為高性能AI
    的頭像 發(fā)表于 08-22 14:55 ?1558次閱讀