91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

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開發(fā)的一個(gè)開源編程語言和編譯器,旨在簡化高性能GPU內(nèi)核的編寫。它提供了類似Python的語法,并通過高級(jí)抽象降低了 GPU 編程的復(fù)雜性,同時(shí)保持了高性能。目前Pytorch已能做到100%替換CUDA,國內(nèi)也有智源研究院主導(dǎo)的FlagGems通用算子庫試圖構(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í)空通過同構(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的話語權(quán)過高,為走出新AI架構(gòu)的路,需要有獨(dú)立的前端編程語言支撐,而Triton DSL的社區(qū)活躍度足夠高,也有相當(dāng)數(shù)量的大模型、CNN模型項(xiàng)目采用了Triton作為算子編程語言。

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

同構(gòu)融合AI

常見的Host-Device的異構(gòu)Triton方案,使得Triton算子編程的調(diào)試?yán)щy,內(nèi)存模型復(fù)雜,不利于開發(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)行,并通過程序正常跳轉(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í)空通過集成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è)上手即用的算子開發(fā)工具鏈。

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

RISC-V AI CPU Triton軟件棧

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

中端層面,通過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的第三方后端,對Pytorch提供RISCV AI-CPU底層加速,兼容社區(qū)已有的Triton Kernel,充分融入現(xiàn)有基于Triton構(gòu)建的AI加速生態(tài)。同時(shí),針對AI-CPU核內(nèi)擴(kuò)展指令、Core-to-Core高速緩存、異步訪存等特性,對tl.make_block_ptr進(jìn)行了專門特化,開發(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ì)算對應(yīng)于下圖計(jì)算過程,當(dāng)以一個(gè)Cluster進(jìn)行捆綁調(diào)度時(shí),SPMD中的Single Program指向一個(gè)Cluster上的執(zhí)行程序,通過Program ID區(qū)分輸入與輸出數(shù)據(jù)位置。以開發(fā)者的視角看,Cluster上的編程是線性的,且不需要關(guān)心異步數(shù)據(jù)的訪問邏輯,后端編譯器將分析用戶代碼邏輯的潛在并行性,在Cluster內(nèi)完成并行化,以及使用高速緩存合并Cluster內(nèi)多核的訪存。

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

中后端

在矩陣乘內(nèi)部計(jì)算過程的轉(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)換過程時(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é)合部分,通過vector.contract構(gòu)造了大量先驗(yàn)的手寫匯編序列,以確保最終性能的可靠性。

結(jié)束語

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)多種軟硬件資源的交互難度降低。此外,未來也將逐步開源SpineTriton的軟件棧部分,共同建設(shè)RISCV Triton高性能編程社區(qū)。

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

    關(guān)注

    28

    文章

    4943

    瀏覽量

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

    關(guān)注

    1

    文章

    1662

    瀏覽量

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

    關(guān)注

    46

    文章

    2562

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

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

    面對未來大模型(LLM)、AIGC等智能化浪潮的挑戰(zhàn),進(jìn)時(shí)空RISC-V方向全面布局,通過精心設(shè)計(jì)的RISC-VDSA架構(gòu)以及軟硬一體的
    的頭像 發(fā)表于 06-06 17:04 ?414次閱讀
    <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,對于充分發(fā)揮CPU核的性能而言,編譯器
    的頭像 發(fā)表于 06-06 16:59 ?368次閱讀
    <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)來協(xié)調(diào)CPU和XPU的額外數(shù)據(jù)交互和同步。進(jìn)時(shí)空踐行的同構(gòu)融合技術(shù),創(chuàng)新性地
    的頭像 發(fā)表于 06-06 16:55 ?440次閱讀
    <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)橋杯,誠邀全國高校學(xué)子共啟RISC-V人工智能應(yīng)用創(chuàng)新賽道

    以下文章來源于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 ?881次閱讀
    高校賽事 | <b class='flag-5'>進(jìn)</b><b class='flag-5'>迭</b><b class='flag-5'>時(shí)空</b>攜手藍(lán)橋杯,誠邀全國高校學(xué)子共啟<b class='flag-5'>RISC-V</b>人工智能應(yīng)用創(chuàng)新賽道

    大象機(jī)器人攜手進(jìn)時(shí)空推出 RISC-V 全棧開源六軸機(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全棧開源小六軸機(jī)械臂

    ? ? 在全球AI與機(jī)器人技術(shù)高速發(fā)展的浪潮中,中國公司始終堅(jiān)定走在自研創(chuàng)新的道路上。 ? ? 4月25日,大象機(jī)器人與 國內(nèi)RISC-V AI CPU芯片領(lǐng)軍企業(yè)【
    的頭像 發(fā)表于 04-25 14:19 ?744次閱讀
    大象機(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>全棧開源小六軸機(jī)械臂

    香蕉派 BPI-CM6 工業(yè)級(jí)核心板采用進(jìn)時(shí)空K1 8核 RISC-V 芯片開發(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ù)字世界的未來發(fā)展奠定了堅(jiān)實(shí)的基礎(chǔ)。RISC-V以其靈活、開源的特性,為芯片設(shè)計(jì)提供了全新的思路;而OpenHarmony5.0則以其開放、可裁
    的頭像 發(fā)表于 02-19 11:30 ?750次閱讀

    進(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 ?470次閱讀
    <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)勢,繁榮產(chǎn)業(yè)發(fā)展”為主題的RISC-V產(chǎn)業(yè)發(fā)展大會(huì)在北京亦莊經(jīng)開區(qū)通明湖會(huì)展中心舉行。作為基于新一代RISC-V架構(gòu)的計(jì)算生態(tài)企業(yè),進(jìn)
    的頭像 發(fā)表于 12-31 17:32 ?803次閱讀
    <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è)開源的編譯器前端,它支持多種編程語言,包括 C、C++、Fortran 和 Ada。Triton 旨在提供一個(gè)可擴(kuò)展和可定制的編譯器框架,允許開發(fā)者添加新的編程語言
    的頭像 發(fā)表于 12-24 17:23 ?1676次閱讀

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

    10月11日-13日,以“智煥新生共創(chuàng)AI+時(shí)代”為主題的2024中國移動(dòng)全球合作伙伴大會(huì)在廣州盛大舉行。作為中國移動(dòng)合作伙伴,進(jìn)時(shí)空RISC-
    的頭像 發(fā)表于 10-16 08:09 ?1757次閱讀
    業(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>與中國移動(dòng)用芯共創(chuàng)<b class='flag-5'>AI</b>+時(shí)代

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

    面對未來大模型(LLM)、AIGC等智能化浪潮的挑戰(zhàn),進(jìn)時(shí)空RISC-V方向全面布局,通過精心設(shè)計(jì)的RISC-V DSA架構(gòu)以及軟硬一體
    的頭像 發(fā)表于 09-07 14:01 ?1963次閱讀
    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開發(fā)板AI人工智能應(yīng)用:四路視頻同時(shí)推理演示:香蕉派BPI-F3是一款工業(yè)級(jí) 8核RISC-V
    的頭像 發(fā)表于 09-07 10:30 ?3318次閱讀
    <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芯片訂單破萬

    在近日召開的第四屆滴水湖中國RISC-V產(chǎn)業(yè)論壇上,進(jìn)時(shí)空公司以其卓越的研發(fā)實(shí)力和前瞻性的產(chǎn)品布局吸引了廣泛關(guān)注。作為高性能AI
    的頭像 發(fā)表于 08-22 14:55 ?1548次閱讀
    主站蜘蛛池模板: 四虎新网站 | 97影院午夜午夜伦不卡 | 天天草夜夜 | 国产亚洲精品在天天在线麻豆 | 美女又黄又免费的视频 | 国产理论视频 | 干美女在线视频 | 欧美日韩精品乱国产538 | 婷婷六月丁香色婷婷网 | 1024手机在线观看你懂的 | 欧美性猛交aa一级 | 黄色网页在线观看 | 久热国产精品 | 精品久久久久久国产免费了 | 韩国中文字幕在线观看 | 国产激情久久久久影院小草 | 亚洲天堂视频在线观看免费 | 亚洲国产成人精品久久 | 亚洲аv电影天堂网 | 国产精品看片 | 五月天婷婷亚洲 | 国产特级 | 激情五月婷婷综合网 | 视频亚洲一区 | 国产黄色三级三级三级 | 天天操好逼 | 夜夜夜网| 欧美一区二区不卡视频 | 国产一区二区在线观看免费 | 天天躁天天狠天天透 | 国产视频h | 日韩三级观看 | 久久99精品国产麻豆宅宅 | 亚洲欧美日韩综合一区 | 美国一级大黄香蕉片 | 在线五月婷婷 | 自偷自拍亚洲欧美清纯唯美 | 狠狠操夜夜 | 人人干人人模 | 综合激情六月 | 精品午夜久久影视 |