本次技術(shù)沙龍邀請(qǐng)到了愛(ài)丁堡大學(xué)信息學(xué)院的教授Bjoern Franke為大家?guī)?lái)分享。他的主要研究領(lǐng)域?yàn)?a href="http://www.socialnewsupdate.com/v/tag/2447/" target="_blank">嵌入式系統(tǒng)的軟件工具,特別是優(yōu)化及并行化編譯器、指令集模擬器等,以及設(shè)計(jì)空間探索與性能評(píng)估工具。
Franke 教授首先簡(jiǎn)單介紹了研究背景,數(shù)據(jù)集合在編程中非常重要,但在給定問(wèn)題域和目標(biāo)平臺(tái)上,選擇正確的集合并實(shí)現(xiàn)并不容易。以層級(jí)的結(jié)構(gòu)組織起來(lái)的集合框架雖然方便,但會(huì)因使用者過(guò)度指定集合數(shù)據(jù)類型,從而限制了實(shí)現(xiàn)的靈活性,最終影響應(yīng)用的性能。
在本次分享中,F(xiàn)ranke 教授為大家介紹了他們團(tuán)隊(duì)開(kāi)發(fā)的 Collection Skeletons,這個(gè)框架為數(shù)據(jù)集合提供了一種新穎的聲明式方式,屬性可以被顯示地進(jìn)行選擇。Collection Skeletons中已經(jīng)定義了一系列語(yǔ)義、接口屬性,未來(lái)還將定義運(yùn)行時(shí)、空間等屬性。
Franke 教授團(tuán)隊(duì)基于Collection Skeletons 實(shí)現(xiàn)了一個(gè) C++ 庫(kù),集合的聲明類似下圖,基于程序接口開(kāi)發(fā)了對(duì)應(yīng)接口屬性的成員函數(shù)和集合的默認(rèn)方法。
教授還介紹了并行化來(lái)進(jìn)一步提高性能,其中 Algorithmic Skeletons 的工作非常有趣,教授也提出了一些后續(xù)待解決的問(wèn)題,比如有哪些屬性可以從源代碼中自動(dòng)推斷出來(lái),現(xiàn)有的屬性集是否完整等。
使用這個(gè) C++ 庫(kù),F(xiàn)ranke 教授團(tuán)隊(duì)重寫(xiě)了 benchmarks,并在三個(gè)不同的硬件平臺(tái) (Intel Desktop、Intel Server、Arm Server) 上進(jìn)行了實(shí)驗(yàn)。結(jié)果證明,部分 benchmarks 有性能提升,平均在 2.57 至 2.93 間。
Algorithmic Skel
未來(lái),F(xiàn)ranke 教授團(tuán)隊(duì)會(huì)支持更多的平臺(tái),進(jìn)行更多 Parallel Algorithmic Skeletons 的相關(guān)研究,并探索其他的問(wèn)題域(如圖、矩陣等),歡迎感興趣的小伙伴持續(xù)關(guān)注!
審核編輯 :李倩
-
編程語(yǔ)言
+關(guān)注
關(guān)注
10文章
1956瀏覽量
36612 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4379瀏覽量
64805 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1224瀏覽量
25434
原文標(biāo)題:活動(dòng)回顧|編程語(yǔ)言技術(shù)沙龍第 23 期:Collection Skeletons: 數(shù)據(jù)集合的聲明式抽象
文章出處:【微信號(hào):編程語(yǔ)言Lab,微信公眾號(hào):編程語(yǔ)言Lab】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
java集合干貨系列
嵌入式操作系統(tǒng)的通用硬件抽象層設(shè)計(jì)
u*** hid報(bào)告描述符collection application和collection physical有什么關(guān)系是從屬關(guān)系嗎
抽象層在嵌入式設(shè)計(jì)中有何作用
嵌入式ARM開(kāi)發(fā)之自定義數(shù)據(jù)類型相關(guān)資料推薦
嵌入式系統(tǒng)硬件抽象層的設(shè)計(jì)思想簡(jiǎn)析
HarmonyOS/OpenHarmony應(yīng)用開(kāi)發(fā)-ArkTS的聲明式開(kāi)發(fā)范式
運(yùn)算放大器電路集合--Op Amp Circuit Coll

嵌入式操作系統(tǒng)的通用硬件抽象層設(shè)計(jì)

嵌入式軟件中狀態(tài)機(jī)的抽象與實(shí)現(xiàn)
分析java接口和抽象類區(qū)別
JAVA集合類匯總

評(píng)論