跳至內容

Futhark語言

出自Taiwan Tongues 台語維基
於 2025年8月22日 (五) 21:59 由 TaiwanTonguesApiRobot留言 | 貢獻 所做的修訂 (從 JSON 檔案批量匯入)

(差異) ←上個修訂 | 已批准修訂 (差異) | 最新修訂 (差異) | 下個修訂→ (差異)

Futhark是一个函數式、資料並列、陣列程式語言,頭仔佇哥本哈根大學理學院電腦科學系(DIKU)做為 HIPERFIT(財務資訊科技的函數式高效能計算)計畫的一部份開發。伊聚焦確定用函數式風格書寫的資料並列程式,會當高效能的執行大規模並列硬體頂懸,特別是佇咧 GPU 上。Futhark 受著 NESL 的強烈啟發,但是為著確定閣較有進取性的編譯器最佳化,著欲按怎表達並列施加約束。特別是,無支援正式的岫狀資料並列。

概述

Futhark 是屬於 ML 家族的語言,伊具有對 OCaml、Standard ML 和 Haskell 衍生的縮排無敏感的語法。型別系統是無仝的 Hindley–Milner 型別系統,猶閣有各種擴充,比如講唯一類型佮大細依值型別。Futhark 無意圖成做書寫完全應用的通用程式語言,轉佇書寫計算在內「核心」(毋免定仝款 GPU 核心), 𪜶由用捷規語言書寫的應用程式來呼叫。

點積

下列程式計算包含雙精度數值的兩个向量的點積:

伊閣會當等價的書寫做有顯式類型標註的形式:

這製作出了大細依值型別,即這個函式只會當相𫝛大細的兩個陣列來呼叫,型別檢查器會拒絕袂當靜態的確定符合這个要求的任何程式。

矩陣乘法

下列程式使用上述點積定義進行矩陣乘法:

注意伊的類型強制這个函式干焦會當有相容大細的矩陣來呼叫。進一步的講,這是岫狀資料並列的例。

參照