跳到主要內容

黃金級贊助商 - Skymizer 帶來 ONNC 通用的開放神經網路編譯器

「AI 創新需要開源生態系,而 ONNX 確保了 frameworks 之間的互通性,ONNC 的目標是將所有的 DLA ASIC 快速、簡單地與 ONNX 連結起來,確保所有的 DLA ASIC 都可以在 ONNX 上執行。」

由於 AI 的應用層面越來越廣,數百種新 AI 晶片將在不久的未來大量出現,目前市場上卻沒有一個能完整支援各家 DLA 的開源編譯器。根據統計,在 2018 年會有超過 34 家 IC 與 IP 廠商提供各式各樣的 AI 晶片與 deep learning accelerator (DLA) ASICs,因此急需一個開源的編譯器來支援各種不同的 AI 晶片。

成立於 2013 年的 Skymizer 一直都專注在 compiler 和 machine learning 領域,看到這個趨勢之後,建立了基於 ONNX 的編譯器 Open Nerual Network Compiler – ONNC,將所有的 AI 晶片與 ONNX 連結起來。

ONNX 是開放類神經網路交換格式,目前常見的 AI framework 如Caffe2、PyTorch…等等各有各的支持者,格式間互通性差,因此訓練出來的深度學習模型無法套用到別的 framework 上,但有了 ONNX,開發者可在不同格式之間輕鬆轉換。而透過 ONNX 支援多平台的特性,ONNC 可以支援各種不同的 AI frameworks,如 Caffe、Caffe2 與 PyTorch,幫助 DLA ASIC 廠商在短時間內就可以支援各種 AI frameworks,提升性能並縮短開發時間。  






想要更了解 ONNC,歡迎到 https://onnc.ai 追蹤最新的動態,
目前 ONNC 已在 GitHub https://repo.onnc.ai 釋出,而所有開發的相關討論,
將會在 mailing list 進行。


ONNC features:
Easy Backend Integration
ONNC is integrated with the LLVM bitcode runtime and compiler. If a DLA already supports the LLVM compiler, it can be connected to ONNC seamlessly. This helps most CPUs, GPUs, and DSPs ported to ONNC in a very short time. On the other hand, if a DLA has unique computation features and is not compatible to LLVM, ONNC also provides a modular framework to speed up the compiler development. DLA vendors can quickly customize an ONNC backend from a so called “vanilla” backend, which already provides some necessary optimization algorithms.


Reusable Compiler Optimizations
Two of ONNC’s contributions are dividing the AI compilation into several clear phases and giving the corresponding APIs for algorithm development.
There are five phases carefully defined, each of which is focused on a particular compiler problem: IR building, partitioning, scheduling, allocation, and code emitting.
ONNC also provides a series of optimization algorithms ready for use. They are general and reusable, including tensor selection, tensor liveness analysis, linear scan local memory allocation, etc. ONNC’s pass manager is flexible and similar to LLVM’s. AI researchers and engineers who are familiar with LLVM can intuitively contribute their general or target-specific optimization algorithms to ONNC.


Status and Future Work
Project ONNC is not mature yet.
Still, we have a lot to do and need the community together to make it better. In this preview release, we carefully designed the software architecture so as to simplify the future development and
maintenance.
The items we have done include:



  • Clear compilation phases and the corresponding APIs.
  • Well-defined and extensible intermediate representation (IR) of target-specific instructions.
  • A pass manager that supports automatic scheduling according to the dependency claimed by each pass.
  • A Sophon backend that supports BITMAIN AI ASIC.
  • Shim library such as ADT, Diagnostics, JSON, etc.

Project ONNC follows the “release early, release often” principle,
so the next release should come soon by the end of August.
We plan to finish the following items.

  • An x86 backend that enables the execution of AI models on an x86 machine. That backend should support both JIT and interpreter way of execution.
  • Improvements of memory allocation based on liveness analysis.

JOIN US
To keep up with the latest development or make suggestions, please join the ONNC mailing list. Also, please head over to the official website https://onnc.ai/ and GitHub https://repo.onnc.ai for more information.








留言

這個網誌中的熱門文章

COSCUP 2020 CfP is now open, submit your proposal before May 11th, 2020.

We are looking for talks in several open-source related areas, please submit your proposal before May 11th, 2020. After the review process from the coordinators, we will publish the full programme in early June.一如往常,在今年的 COSCUP 我們徵求各式各樣不同的 Open Source 相關稿件。請於 5 月 11 日前投稿,或可參考本頁下方各議程軌資訊。Submit your proposalImportant DatesSubmission deadline: May 11th, 2020 (截稿時間)Full programme published: Early June (預定公佈時間)COSCUP 2020: Aug 1-2 (with welcome party at July 31st night), at National Taiwan University of Science and TechnologyTracksQMK Keyboarder / 鍵人谷Open Source ChatbotLet's Read the Source Code / 帶您讀源碼MySQL Open Space / 開放 MySQL 開放空間Cloud Native HubBSDArch Linux & ArchersEnter the FLOSS World / 開源新手村Open Source AI: Human-like & Trustworthy AI / AI 開源:更有智慧與可信賴的 AIEffective GoJulia LanguageMyDataCOSCUP StartupsCOSCUP EnterprisesOpen Source DesignOpen Source EducationPostgreSQLRubyEverything in RustBlockchain and Distributed LedgerOpenStreetMap x WikidataEmbedded Linux / 嵌入式 Linu…

COSCUP 2020 Call for Participation -- now open! 議程軌與攤位即日起開放申請

Photo by Jaime Lopes on UnsplashLadies and gentlemen, time to apply for a COSCUP 2020 community track/booth! 快速跳到中文版TracksCommunity Tracks are assigned to self-organizing groups to work, share, and discuss issues around an open-source-related topic. The application should be submitted before March 30th.You can decide the content and format in your Track.You can decide the duration of each section and the whole schedule in your Track.Key datesMarch 30th: Deadline for Track applicationsApril 10th: Track coordinators provide information of Call for ProposalApril 13 April 20th: Call for Proposal starts (Update: We've postponed the CfP start date to April 20th.)May 11th: Deadline for Call for ProposalLate-May: Track coordinators provide the complete scheduleEarly June: Full schedule published on COSCUP.org (TBC)August 1-2 at Taipei: COSCUP 2020Application rulesScheduleWe do not plan for rooms to be empty during the event. By applying for a Track you are making a commitment to fill th…

來去上海、來去東京!COSCon 與 OSC Tokyo「COSCUP 特別軌」徵稿開始!

嗨,各位關心開源、熱愛分享的夥伴大家今天過得好嗎?今年六月的時候,我們出訪香港開源年會,廣受好評,接下來將帶大家前往上海舉辦的中國開源年會(COSCon)及東京的 OSC 2019 Tokyo/Fall 啦! 給忙碌的你: 往上海的傳送門往東京的傳送門 COSCon COSCon 由開源社為了推廣開放源碼而舉辦,相信大家在今年 COSCUP 有看到許多開源社夥伴的活躍表現,十一月就換我們過去作客啦!我們將在 COSCon 有半天的議程軌作為「COSCUP 特別軌」,重要的資訊如下: 徵稿期間:即日起~9/30 止徵稿對象:能夠以大會接受之語言(漢語、英語)演講、願意配合 COSCUP / COScon 對此專案相關宣傳及訪問者徵稿內容:各式 Open Source 軟體(以 FSF / OSI Licenses 釋出)相關議題皆可投稿結果公佈:暫定 10 月中旬 於 COSCon 網站及 COSCUP Blog 公布COSCon 大會期間: 11/02 ~ 11/03 於 上海普陀區 華東師範大學(中北校區) OSC Tokyo OSC Tokyo 是什麼?就也當成是日本版的 COSCUP 吧 XD (怎麼想來想去形容詞都是這句…) OSC 的主辦單位 OSPN 每年在日本各地辦近 20 場集結開源人的聚會,而我們將直接前往規模較大、一年還辦兩次的東京場交流!一整軌的「COSCUP 特別軌」將讓讓大家見識一下台灣開源人的厲害,重要的資訊如下: 徵稿期間:即日起~9/30 止徵稿對象:能夠以大會接受之語言(日語、英語)演講、願意配合 COSCUP / OSC Tokyo 對此專案相關宣傳及訪問者徵稿內容:各式 Open Source 軟體(以 FSF / OSI Licenses 釋出)相關議題皆可投稿結果公佈:暫定 10 月中旬 於 OSC Tokyo 網站及 COSCUP Blog 公布OSC Tokyo 大會期間: 11/23 ~ 11/24 於 日本東京日野市 明星大學 可能已經有人心中堆滿疑問:看起來很有趣但要怎麼參加?去國外參加 Conf 好像很貴… 別擔心,COSCUP 籌備特別軌自然是有照顧到這些問題。如同六月的香港出征,我們有完整的補助計劃,相關辦法都列在下面的文件了,心動不如馬上行動,十一月讓我們前進上海與東京吧! 上海 徵稿表單旅費補助辦法東京