當(dāng)前位置: 首頁 > 新聞熱點(diǎn)
發(fā)布日期:2022-07-14 點(diǎn)擊率:40
多核聯(lián)盟正式打響了為嵌入式多核處理器確定最佳編程做法的號角。它希望在一年內(nèi)定義和制定一個(gè)指南來處理在日益增長的并行軟件領(lǐng)域出現(xiàn)的最棘手的問題。
“我把這個(gè)視為每一個(gè)多核開發(fā)人員的“幫助”文檔,”新工作組的聯(lián)席主席和CriticalBlue(圣荷西的一家軟件設(shè)計(jì)工具提供商)的首席執(zhí)行官David Stewart說。“我們將嘗試在10或者20個(gè)熱點(diǎn)問題上尋找最佳的處理方式以取得跨行業(yè)間的共識,”他補(bǔ)充說。
包括飛思卡爾半導(dǎo)體,Imperas,英特爾,諾基亞西門子網(wǎng)絡(luò)公司, PolyCore Software, 德州儀器和 WindRiver都將參與這項(xiàng)工作。工作組將在6月10日在阿納海姆舉行的設(shè)計(jì)自動化大會上就有關(guān)問題召開一次公開會議。
“預(yù)望這項(xiàng)計(jì)劃將會增加我們的成員,對于和同類或異類的多核處理器打交道的公司來說這都是值得關(guān)注,”多核聯(lián)盟的主席Markus Levy說。
工作組初期重點(diǎn)至少會放在C和C++的使用上。“我們會嘗試從剛開始從事寫代碼的程序員的商業(yè)和實(shí)用的角度上考慮如何實(shí)現(xiàn)這一計(jì)劃。” Levy說。
最近在伯克利,斯坦福及其它地方已經(jīng)出現(xiàn)了少數(shù)研究中心開始著手制定超越C語言的編程模型和編程語言。
“至于最終結(jié)果會如何則眾說紛紜,如果糾纏在這種問題上將會分散我們的資源,”Stewart說,“對我們來說關(guān)鍵是看今天的開發(fā)人員都在做些什么。”
Stewart說工作組更傾向于解決如何去除代碼相關(guān)性(即實(shí)現(xiàn)與代碼無關(guān)),進(jìn)程間通信和運(yùn)行環(huán)境等問題。“有許多問題都是可以獨(dú)立進(jìn)行解決的,”他說。
CriticalBlue, Imperas, 英特爾 和諾基亞西門子網(wǎng)絡(luò)公司都對工作組做出了一定的貢獻(xiàn)。CriticalBlue貢獻(xiàn)了包括算法框架和基于其研究的代碼范例。
這家有五年歷史的公司擁有能分析在ARM處理器運(yùn)行的應(yīng)用程序的工具。該工具能夠找到合適的能從主機(jī)卸載的進(jìn)程,并自動產(chǎn)生RTL和微碼以生成協(xié)處理器加快程序的運(yùn)行。
作為制定其產(chǎn)品的多核版本成果的一部分,該公司成功解決了一系列并行編程設(shè)計(jì)的問題,這對多核協(xié)處理器的問題也有一定的幫助。
新工作組是多核聯(lián)盟正在努力中的幾個(gè)項(xiàng)目之一,最近已經(jīng)完成了標(biāo)準(zhǔn)消息傳遞API的制定工作,這項(xiàng)成果不久將刊登在它的主頁上。
其他工作組正在制定資源的API和任務(wù)管理等。作為該項(xiàng)計(jì)劃的擴(kuò)展內(nèi)容,聯(lián)盟也正在考慮為系統(tǒng)程序制定一個(gè)的系統(tǒng)程序基準(zhǔn)API以幫助EEMBC(嵌入式微處理器基準(zhǔn))協(xié)會處理虛擬化的工作。
翻頁查看英文原文:
Designers draft multicore programming guide
The Multicore Association is kicking off an effort to define best programming practices for embedded multicore processors. The group hopes within a year to define and create a guide to handling the thorniest problems in the growing arena of parallel software.
"I see this as the 'Read Me' document for anyone doing multicore programming," said David Stewart, co-chair of the new working group and chief executive of CriticalBlue (San Jose), a provider of software design tools. "We'll try to get a consensus from a significant cross section of the industry on what are the top 10 or 20 issues and the best ways to handle them," he added.
Companies participating in the effort include Freescale, Imperas, Intel, Nokia Siemens Networks, PolyCore Software, Texas Instruments and WindRiver. The group will hold an open meeting at the Design Automation Conference in Anaheim on June 10 to get broad input on the issues.
"We expect this could grow our membership because this is a key concern both for companies working with homogeneous and heterogeneous multicore processors," said Markus Levy, president of the Multicore Association.
The group will focus at least initially on issues using C and C++. "We are trying to approach this from a commercial and practical perspective of people trying to write code today," said Levy.
A handful of research centers sprouted up at Berkeley, Stanford and elsewhere recently to try to define new programming models and languages beyond C.
"There's a wide diversity of opinions as to how that will pan out, so it would be defocusing to try to address it," said Stewart. "The key thing for us is looking at what people are working on today."
Stewart said the group is likely to address issues such as how to tackle code dependencies, inter-process communications and race conditions. "There are a lot of issues that are implementation independent," he said.
CriticalBlue, Imperas, Intel and Nokia Siemens Networks have already made contributions to the working group. CriticalBlue's contribution included a methodology framework and code examples based on its research.
The five-year-old company has tools that can analyze applications running mainly on ARM processors. The tools identify processes suitable to offload from the host, then automatically generate RTL and microcode to create co-processors to accelerate the work.
The company worked through a number of parallel programming issues as part of an effort to define a multicore version of its product that could coordinate the efforts of multiple co-processors.
The new group is one of several ongoing efforts at the Multicore Association. The group recently finished work on a standard message-passing API that will be published on its Web site soon.
Other groups are defining APIs for resource and task management. The association is also considering an effort to define an API for hypervisors that handle virtualization as an extension of work on a hypervisor benchmark in the EEMBC consortium.