Skymizer 勇者召集令 2020

關於我們

Skymizer 是頂尖的編譯與虛擬化技術團隊,幫助客戶建立各式的虛擬機與編譯器,增加軟體效能、縮短 time-to-market 時間;目前我們已與世界級的公司合作,一起開發供深度學習 (deep learning) ASIC 使用的編譯器。除了內部產品,也積極開發及參與 Open Source 的專案。我們熱愛技術、想透過我們的雙手讓軟體界變得更好,為此,需要你的加入!

繼續閱讀 Skymizer 勇者召集令 2020

Skymizer 勇者召集令 2019

關於我們

Skymizer 是頂尖的編譯與虛擬化技術團隊,幫助客戶建立各式的虛擬機與編譯器,增加軟體效能、縮短 time-to-market 時間;目前我們已與世界級的公司合作,一起開發供深度學習 (deep learning) ASIC 使用的編譯器,與新一代區塊鏈上的智能合約 (smart contract) 所使用的虛擬機。除了內部產品,也積極開發及參與 Open Source 的專案。我們熱愛技術、想透過我們的雙手讓軟體界變得更好,為此,需要你的加入!

繼續閱讀 Skymizer 勇者召集令 2019

Skymizer 2018 見習勇者招募中 (part-time) 已額滿 不收履歷囉

關於我們

Skymizer 是頂尖的編譯與虛擬化技術團隊,幫助客戶建立各式的虛擬機與編譯器,增加軟體效能、縮短 time-to-market 時間;目前我們已與世界級的公司合作,一起開發供深度學習 (deep learning) ASIC 使用的編譯器,與新一代區塊鏈上的智能合約 (smart contract) 所使用的虛擬機。除了內部產品,也積極開發及參與 Open Source 的專案。我們熱愛技術、想透過我們的雙手讓軟體界變得更好,為此,需要你的加入!

繼續閱讀 Skymizer 2018 見習勇者招募中 (part-time) 已額滿 不收履歷囉

Skymizer 以開放類神經網路編譯器 ONNC 串連 ONNX 與 deep learning accelerator (DLA) ASICs

由於 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 連結起來,並將於 2018 年七月底之前將 ONNC 開源。

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

ONNC 對目前 AI frameworks 的主要優勢在於 ONNC 提供了 DLA ASIC 晶片的直接支援。DLA ASIC 廠商可以根據硬體架構來描述硬體 cost model,編譯器就可以在不必修改演算法的狀況下,產生更高品質的程式碼,加速執行時間,減少記憶體使用量,提升執行效率,也幫助晶片廠商更快讓產品進入市場。

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

今年七月,就讓我們與開放類神經網路編譯器 ONNC 攜手連結 AI 世界。

Skymizer connects ONNX to all deep learning accelerator ASICs

Skymizer, a compiler company founded in 2013, will launch the open source compiler “ONNC” (Open Neural Network Compiler) to ONNX backed by its unique compiler technologies.

Hundreds of AI chips are releasing in the near future, the latest figures indicate 34 IC and IP vendors will provide various AI chips and deep learning accelerator (DLA) ASICs in 2018. These all reflect the urgent need for an open compiler to support different AI chips.

Skymizer foresaw the trend and developed the compiler ONNC. Based on ONNX, ONNC is an efficient way to connect all current AI chips, especially DLA ASICs, with ONNX. Skymizer will open source ONNC before the end of July 2018.

Open Neural Network Exchange Format (ONNX) is a standard for representing deep learning models that enables models to be transferred between frameworks. Skymizer introduces ONNC that supports ONNX format and mainstream AI frameworks such as Caffe and Tensorflow. ONNC’s dominant advantage to current AI frameworks is that it provides direct support to DLA ASIC chips by ability to describe variants of performance cost models of hardware and by general optimization passes. DLA ASIC vendors can reuse these optimization passes by describing its special performance cost model in ONNC. ONNX and ONNC together help DLA ASIC vendors support various AI frameworks within a short time, improves DLA’s performance and shortens developing schedule.

“AI innovations need the open ecosystem, ONNX, who guarantees interoperability among frameworks,” said Luba Tang, CEO of Skymizer. “ONNC aims to connect all deep learning accelerators to ONNX, by general approach, in short time.”

Skymizer will release ONNC, an open source neural network compiler before the end of July 2018.

SkySquire 使用教學

SkySquire 是個萬用小刀,讓你可以輕鬆修改其他程式預設行為。

今天如果要修改一個 open source project 的編譯參數,你會怎麼做?
你會試著去了解所有的編譯過程,修改 Makefile 或者是各式各樣的設定檔?相信我,這是一件繁瑣而且可怕的事情,非常容易出錯而無法察覺。我們曾經花了兩個月研究 MESA 的效能變化,卻發現編譯器優化的參數沒有辦法傳遞到整個 project 當中;也曾發現 open source project 當中的編譯器的優化參數其實從來沒有被 Makefile 傳遞過。為了解決參數傳遞問題,我們也曾經大改 Android 的 nijia,好讓我們能夠針對不同的檔案下不同的編譯參數。

繼續閱讀 SkySquire 使用教學

Introduction to evaluate tool “SkySquire”

SkySquire is a versatile tool, or say a Swiss army knife, to help you revise the default behavior of softwares. For example, you can enable ‘-O3’ as a default option of your gcc/clang. With SkySquire, you don’t need to handle with all details of Makefiles and building system any more.

繼續閱讀 Introduction to evaluate tool “SkySquire”

How to evaluate Skymizer Intelligent Compiler for your projects

According to our study, the bigger performance gap between O0 to O3 is, the higher performance Skymizer Intelligent Compiler can achieve eventually.

Skymizer Intelligent Compiler combines machine learning, high-performance computing and compiler technologies to find the best way to optimize your projects. Its high level concept is a sort of iterative compiler which drives performance guide optimization (PGO) and linker optimization (on linker level, not LTO). Our machine learning system studies the whole compilation process of your project, from compiler to linker, and recommends you the best optimization approach.

繼續閱讀 How to evaluate Skymizer Intelligent Compiler for your projects