Eclipse 基金會(huì)開(kāi)源 iceoryx,微秒級(jí)數(shù)據(jù)傳輸解決方案
Eclipse iceoryx 是快速、靈活且可靠的中間件解決方案為汽車(chē)、機(jī)器人、人工智能等應(yīng)用提供實(shí)時(shí)數(shù)據(jù)傳輸。
Eclipse 基金會(huì)是全球最大的開(kāi)源基金會(huì)之一,近日 Eclipse 基金會(huì)在 GitHub 上開(kāi)源了一個(gè)項(xiàng)目 —— Eclipse iceoryx,這是一個(gè)進(jìn)程間通信(IPC,inter-process-communication)的中間件,能夠?qū)崟r(shí)傳輸大量數(shù)據(jù)。這使它成為了需要以極低延遲交換大量數(shù)據(jù)的應(yīng)用的理想選擇,如汽車(chē)應(yīng)用、機(jī)器人和人工智能等領(lǐng)域。iceoryx 實(shí)現(xiàn)了新的響應(yīng)水平,同時(shí)也為特定應(yīng)用中的其他功能釋放了運(yùn)行時(shí)間資源。
Eclipse 基金會(huì)執(zhí)行董事 Mike Milinkovich 表示:"Eclipse iceoryx 是開(kāi)源軟件解決關(guān)鍵行業(yè)需求的一個(gè)絕佳案例。Eclipse iceoryx 背后的技術(shù)起源于汽車(chē)領(lǐng)域。一輛傳統(tǒng)的非自動(dòng)駕駛汽車(chē)中的軟件通常會(huì)運(yùn)行 1 億行左右的代碼,而對(duì)于一輛自動(dòng)駕駛汽車(chē)來(lái)說(shuō),這一代碼量迅速擴(kuò)大到 3-5 億行。與此同時(shí),車(chē)輛還將需要處理高達(dá) 10GB/s 的傳感器數(shù)據(jù),以做出實(shí)時(shí)的、對(duì)安全至關(guān)重要的決定。Eclipse iceoryx 提供了一個(gè)快速、靈活和更可靠的方式,以在系統(tǒng)之間實(shí)時(shí)交換如此大量的數(shù)據(jù)。"
Eclipse iceoryx 具有的特性包含以下幾點(diǎn):
- 真正的零拷貝共享內(nèi)存通信;
- 信息傳輸?shù)难舆t小于 1 微秒;
- 用于處理 GB/s 的數(shù)據(jù)傳輸;
- 支持多種操作系統(tǒng)、通信模式和 API;
- 易于集成到 ROS 2 或 AUTOSAR Adaptive 等框架中;
- 基于靜態(tài)內(nèi)存和 lock-free 算法的實(shí)現(xiàn);
- 具有安全 STL 實(shí)現(xiàn)的巨大的 C++ 庫(kù);
在現(xiàn)代處理器上,無(wú)論消息的大小,iceoryx 傳輸消息的延遲都小于 1 微秒。在這種速度下,Eclipse iceoryx 實(shí)現(xiàn)了所謂的真正零拷貝(zero-copy)。這是一種從發(fā)布者到訂閱者的端到端方法,沒(méi)有創(chuàng)建一個(gè)副本。當(dāng)機(jī)器人和自動(dòng)駕駛系統(tǒng)每秒必須處理以 GB 為單位的傳感器數(shù)據(jù)時(shí),避免 API 層面的拷貝是至關(guān)重要的。
在靈活性方面,Eclipse iceoryx 目前已經(jīng)支持 Linux、QNX 和 macOS 作為操作系統(tǒng),以及 C 和 C++ 作為用戶(hù) API。針對(duì) Windows 和 Rust 的適配也正在開(kāi)發(fā)中。Eclipse iceoryx 還被用于機(jī)器人操作系統(tǒng)(ROS 2)框架中,作為高性能 IPC 傳輸層構(gòu)建機(jī)器人應(yīng)用。
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:Eclipse 基金會(huì)開(kāi)源 iceoryx,微秒級(jí)數(shù)據(jù)傳輸解決方案
本文地址:https://www.oschina.net/news/148113/eclipse-foundation-announces-iceoryx