例如 Java 6 -server 對 Python 的比較結果 : ( 這兩者在 CPU Time 跟 Memory Usage 上的差異還真是明顯 )


不過當然, 這些 benchmarking 只能反應這些 programming languages 之間比較的小部份面向而已, 就軟體工程的角度而言, 選擇 programming languages 時要考慮的 factors 比這裡所能呈現的多太多了.
但是從這點出發, 是否未來有一天, 我們也可以靠著在這樣的網頁上, 選取跟目前進行中的 project 相關的 benchmarks, 以及要衡量的 factors, 就決定要利用哪種 programming language 進行開發呢 ? 例如上面的 benchmark 中, 包含了許多基本的 data structure 以及 algorithms 作為 benchmarks, 如果這些 benchmarks 可以組合起來, 提供更為 high-level 的 evaluation benchmark, 同時加上不同的 programming languages 在 architectural components 上得 benchmarks, 那麼我們可能就可以找到更多在軟體工程中可以被利用的 benchmarks, 進而更容易決定 programming languages 的選擇.
Nice!
回覆刪除我以前作 codec 的時候,就花了一段時間,透過 GNU Plot 弄了自動 check out from SVN repository & build,然後以內建的 benchmark framework 輸出資料並建立視覺圖表,輔助評估不同的優化演算法與平台特性微調。
「工欲善其事,必先利其器」
學長總是一貫地相當有行動力 :)
回覆刪除有點好奇在學長建立的 tool 中, 在 benchmarking 的結果跟後續的 codec 微調之間, 是靠 programmer 的判斷來作調整嗎 ? 或是在 benchmarking 結果跟可能進行的調整之間, 可以整理出一些 patterns ?