SkySquire 使用教學

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

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

繼續閱讀 SkySquire 使用教學

SkySquire:a very easy way to eable LTO/PGO

SkySquire 是個萬用小刀,讓你可以輕鬆嘗試各種 gcc/llvm 的優化,不用再花漫漫長夜修改 Makefile。這裡我們教大家如何使用 SkySquire 來輕鬆啟動 Link Time Optimization (LTO) 以及 Profiler Guided Optimization(PGO)。

繼續閱讀 SkySquire:a very easy way to eable LTO/PGO

評估 Skymizer Intelligent Compiler 優化的可能性

根據 Skymizer 的研究,如果基本的編譯器參數優化有效果,那麼就很適合使用 Skymizer Intelligent Compiler。

我們可以利用 SkySquire 來做基本的編譯器參數優化,改變 gcc/clang 的預設參數,將 gcc/clang 設定為低水位高水位,並藉由高低水位的差距,來評估使用 Skymizer Intelligent Compiler 優化的可能性。

繼續閱讀 評估 Skymizer Intelligent Compiler 優化的可能性