本次技術沙龍邀請到了愛丁堡大學信息學院的教授Bjoern Franke為大家?guī)矸窒怼K闹饕芯款I域為嵌入式系統(tǒng)的軟件工具,特別是優(yōu)化及并行化編譯器、指令集模擬器等,以及設計空間探索與性能評估工具。
Franke 教授首先簡單介紹了研究背景,數(shù)據(jù)集合在編程中非常重要,但在給定問題域和目標平臺上,選擇正確的集合并實現(xiàn)并不容易。以層級的結構組織起來的集合框架雖然方便,但會因使用者過度指定集合數(shù)據(jù)類型,從而限制了實現(xiàn)的靈活性,最終影響應用的性能。
在本次分享中,F(xiàn)ranke 教授為大家介紹了他們團隊開發(fā)的 Collection Skeletons,這個框架為數(shù)據(jù)集合提供了一種新穎的聲明式方式,屬性可以被顯示地進行選擇。Collection Skeletons中已經(jīng)定義了一系列語義、接口屬性,未來還將定義運行時、空間等屬性。
Franke 教授團隊基于Collection Skeletons 實現(xiàn)了一個 C++ 庫,集合的聲明類似下圖,基于程序接口開發(fā)了對應接口屬性的成員函數(shù)和集合的默認方法。

教授還介紹了并行化來進一步提高性能,其中 Algorithmic Skeletons 的工作非常有趣,教授也提出了一些后續(xù)待解決的問題,比如有哪些屬性可以從源代碼中自動推斷出來,現(xiàn)有的屬性集是否完整等。
使用這個 C++ 庫,F(xiàn)ranke 教授團隊重寫了 benchmarks,并在三個不同的硬件平臺 (Intel Desktop、Intel Server、Arm Server) 上進行了實驗。結果證明,部分 benchmarks 有性能提升,平均在 2.57 至 2.93 間。

Algorithmic Skel
未來,F(xiàn)ranke 教授團隊會支持更多的平臺,進行更多 Parallel Algorithmic Skeletons 的相關研究,并探索其他的問題域(如圖、矩陣等),歡迎感興趣的小伙伴持續(xù)關注!
審核編輯 :李倩
-
編程語言
+關注
關注
10文章
1957瀏覽量
38585 -
函數(shù)
+關注
關注
3文章
4401瀏覽量
66523 -
數(shù)據(jù)集
+關注
關注
4文章
1229瀏覽量
25960
原文標題:活動回顧|編程語言技術沙龍第 23 期:Collection Skeletons: 數(shù)據(jù)集合的聲明式抽象
文章出處:【微信號:編程語言Lab,微信公眾號:編程語言Lab】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
java集合干貨系列
嵌入式操作系統(tǒng)的通用硬件抽象層設計
u*** hid報告描述符collection application和collection physical有什么關系是從屬關系嗎
嵌入式ARM開發(fā)之自定義數(shù)據(jù)類型相關資料推薦
嵌入式系統(tǒng)硬件抽象層的設計思想簡析
HarmonyOS/OpenHarmony應用開發(fā)-ArkTS的聲明式開發(fā)范式
嵌入式操作系統(tǒng)的通用硬件抽象層設計
嵌入式軟件中狀態(tài)機的抽象與實現(xiàn)
分析java接口和抽象類區(qū)別
JAVA集合類匯總

Collection Skeletons: 數(shù)據(jù)集合的聲明式抽象
評論