剖析基準測試
——
剖析基準測試
基準測試能在您分析和比較各個(gè)系統時(shí)為您節省時(shí)間。但是,基準測試的真正價(jià)值常常意味著(zhù)對每個(gè)評分的意義“進(jìn)行逆向工程”并且將那些見(jiàn)解應用到您的實(shí)際環(huán)境中。
要點(diǎn)
● 基準試圖將復雜系統進(jìn)行抽象和簡(jiǎn)化以便您能更好地進(jìn)行蘋(píng)果對蘋(píng)果比較。
● 基準必須附帶完整的測試詳情才有意義。
● 您有責任分析基準測試詳情以判斷一個(gè)給定評分是否與實(shí)際情況相關(guān)。
● 基準應該只作為整個(gè)決策過(guò)程的一個(gè)數據點(diǎn),諸如供應商開(kāi)發(fā)支持和平臺靈活性等其他定性因素可能比基準測試高評分更重要。
基準是一個(gè)您能用以對兩個(gè)或更多相似選擇對象的價(jià)值和質(zhì)量進(jìn)行一致的測量、量化和比較的參考點(diǎn),這些選擇對象包括商業(yè)過(guò)程、工具和嵌入式處理器等。對于嵌入式處理器來(lái)說(shuō),基準通常是一組在候選處理器上運行的一致性軟件代碼,因此您可以將候選處理器的性能與其他可供選用的處理器進(jìn)行比較。處理器基準并不局限于測量處理器體系結構效率;它們還能表明編譯器相對于人工優(yōu)化編碼的效率。
理想的基準對一個(gè)系統的重要性能度量進(jìn)行提取和合并,形成一個(gè)在特定上下文中,能對不同系統選擇進(jìn)行有意義的“蘋(píng)果對蘋(píng)果”比較的簡(jiǎn)化表示 或評分。但是,使用理想的基準如果不能比不太精確的比較工作更多地節省時(shí)間、降低成本或者減小風(fēng)險,那是不切實(shí)際的。
對于具有某一清晰目標的系統或任務(wù)來(lái)說(shuō),您常常會(huì )找到一個(gè)性能度量,用以精確獲取系統行為,并在您將該系統與其他選擇對象比較時(shí)具有良好的相關(guān)性。比較兩個(gè)處理器的時(shí)鐘速率就是獲得相對性能的一個(gè)流行的基準度量,但是它的適用環(huán)境很窄,只有當這兩個(gè)處理器除了時(shí)鐘速率之外大致相同時(shí),這種比較才有用。盡管比較基準測試評分的簡(jiǎn)單性如何吸引人,但正確解釋這些相互關(guān)聯(lián)的評分則需要您了解基準測量的基本細節及其與您應用系統的相關(guān)性。對于嵌入式設計來(lái)說(shuō),您比較的處理器體系結構可能大不相同,因此使用時(shí)鐘速率作為基準度量也許是不適宜的。
通常,嵌入式設計必須同時(shí)平衡并滿(mǎn)足許多目標,例如提供正確的功能既要快速、經(jīng)濟實(shí)惠,又要具有低功耗、高質(zhì)量和靈活性。就這幾類(lèi)情況而言,性能是多方面的,因此將系統性能精確地描述為一個(gè)簡(jiǎn)化的評分,用以與其他選擇對象進(jìn)行有意義的比較,可能是困難而又代價(jià)高昂的。對多個(gè)系統進(jìn)行比較存在一個(gè)難題,就是既要使獲得和導出基準測試評分簡(jiǎn)易而又花錢(qián)少,又要使不同系統的相同評分的排名有意義。
謊言和更多謊言
許多處理器供應商都使用基準測試評分作為一種營(yíng)銷(xiāo)工具。但是,有些經(jīng)常發(fā)布的基準測試評分,如MIPS(每秒百萬(wàn)條指令)和DMIPS(Dhrystone MIPIS),在沒(méi)有特定背景的情況下是毫無(wú)意義和不恰當的(參閱附文《基準測試游戲》)。這兩類(lèi)性能評分的繼續廣泛使用使得處理器基準測試獲得了對處理器性能度量不精確的名聲。一次網(wǎng)上搜索就會(huì )發(fā)現對下面關(guān)于標準基準測試的陳述的多次引用:“計算機行業(yè)有三種謊言:謊言、該死的謊言和基準測試?!?br/> 綜合基準測試通常試圖通過(guò)使用人工指令序列或者通過(guò)盡量模擬真實(shí)環(huán)境應用系統中的普通指令混合,來(lái)度量某個(gè)系統、處理器或編譯程序的一個(gè)或多個(gè)新性能。相反,真實(shí)環(huán)境應用系統基準測試在考慮處理器特性方面前進(jìn)了一步,它試圖對處理器體系結構和開(kāi)發(fā)工具如何處理特定類(lèi)型應用系統的預期工作量進(jìn)行預測和量化。應用系統基準測試可能使用一組或多組真實(shí)應用程序代碼塊來(lái)為一個(gè)應用系統實(shí)現代表性的功能。
公開(kāi)傳播諸如MIPS和DMIPS等標準綜合基準測試這種做法凸顯出人們需要開(kāi)發(fā)和使用簡(jiǎn)單而又有意義的度量。這幾類(lèi)基準測試相對比較便宜,也最容易實(shí)現,因而沒(méi)有容易而又低成本實(shí)現的無(wú)版權替代方案。行業(yè)標準基準測試是對競爭性產(chǎn)品進(jìn)行比較的基礎,但是,供應商通常要承擔一筆可觀(guān)的費用以便獲得基準測試證據。BDTI(Berkeley設計科技有限公司)、EEMBC(EDN嵌入式微處理器基準聯(lián)盟)和SPEC(標準性能評估公司)等基準組織通過(guò)提供能對目標性能測量進(jìn)行分類(lèi)的基準測試套件,致力于各種不同方面的計算。各種基準測試套件構成一致性測試的基礎,并支持一個(gè)性能評分的粒度范圍,使得您能夠在一個(gè)特定環(huán)境中更好地評估處理器特性和系統性能。
行業(yè)標準基準測試可以作為決策過(guò)程的一個(gè)有價(jià)值的“輸入”,但還不足以成為您設計決策的唯一依據。首先,為您應該考慮的每個(gè)處理器平臺找到相關(guān)而又可比的基準測試結果可能是很難或者是不可能的事。另一個(gè)問(wèn)題是,當您確定找到相關(guān)而又可比的基準測試時(shí),基準測試數據可能本來(lái)是為您當前正在考慮的一代代處于完全不同時(shí)間點(diǎn)的不同處理器導出的,而且它本可以采用的存儲器結構與您將要使用的迥然不同。特定的或自定義基準測試是分析過(guò)程的一部分,有助于填補行業(yè)標準基準測試與您應用需求之間的空白。
有幾類(lèi)基準測試用戶(hù)退出了。顯而易見(jiàn)的基準測試用戶(hù)是嵌入式系統設計師或者是成為銷(xiāo)售組織營(yíng)銷(xiāo)對象的終端用戶(hù)。但是,據幾個(gè)基準組織說(shuō),終端用戶(hù)并不是行業(yè)標準基準測試結果的主要用戶(hù)群體?;鶞蕼y試作為主要決策依據還不充分,因為它們不能精確地反映每個(gè)嵌入式系統設計師的應用需求。例如,許多基準測試是內核級的,不考慮與設計師在最終應用中要使用的操作系統的交互作用。
當終端用戶(hù)使用基準測試結果時(shí),他們同各個(gè)處理器廠(chǎng)商的合作常常比同基準組織的合作更為密切,以便獲得性能數據和復制測試結果方面的幫助,并了解基準測試配置如何適用于他們的設計要求。終端用戶(hù)可能使用基準測試作為縮減候選處理器名單的一個(gè)“輸入”,但是其他項目如一組集成特性、支持的I/O接口、開(kāi)發(fā)工具、培訓、文檔、第三方開(kāi)發(fā)支持基礎設施以及規劃風(fēng)險,都將在排除候選處理器時(shí)起重要作用。通常,終端用戶(hù)基準測試是一個(gè)僅適合于立即進(jìn)行的設計項目的特殊過(guò)程。
許多處理批量大而對價(jià)格敏感的設計的OEM(原始設備制造商),都根據自己的自定義基準測試來(lái)選擇處理器。自定義基準測試可以由既有應用代碼構成,但也可能包括來(lái)自行業(yè)標準基準測試的代碼。有些OEM成為基準組織的成員,以便獲得基準測試源代碼,因此,他們能將該源代碼的一部分合并到他們的自定義基準測試套件中。這些基準測試套件只能滿(mǎn)足范圍狹小的目標需求,所以更詳細、更全面。行業(yè)標準基準努力在相關(guān)性、復雜度和成本之間取得平衡,能滿(mǎn)足范圍較廣的應用需求。通常,OEM基準測試工作對競爭很敏感,只供內部使用
要點(diǎn)
● 基準試圖將復雜系統進(jìn)行抽象和簡(jiǎn)化以便您能更好地進(jìn)行蘋(píng)果對蘋(píng)果比較。
● 基準必須附帶完整的測試詳情才有意義。
● 您有責任分析基準測試詳情以判斷一個(gè)給定評分是否與實(shí)際情況相關(guān)。
● 基準應該只作為整個(gè)決策過(guò)程的一個(gè)數據點(diǎn),諸如供應商開(kāi)發(fā)支持和平臺靈活性等其他定性因素可能比基準測試高評分更重要。
基準是一個(gè)您能用以對兩個(gè)或更多相似選擇對象的價(jià)值和質(zhì)量進(jìn)行一致的測量、量化和比較的參考點(diǎn),這些選擇對象包括商業(yè)過(guò)程、工具和嵌入式處理器等。對于嵌入式處理器來(lái)說(shuō),基準通常是一組在候選處理器上運行的一致性軟件代碼,因此您可以將候選處理器的性能與其他可供選用的處理器進(jìn)行比較。處理器基準并不局限于測量處理器體系結構效率;它們還能表明編譯器相對于人工優(yōu)化編碼的效率。
理想的基準對一個(gè)系統的重要性能度量進(jìn)行提取和合并,形成一個(gè)在特定上下文中,能對不同系統選擇進(jìn)行有意義的“蘋(píng)果對蘋(píng)果”比較的簡(jiǎn)化表示 或評分。但是,使用理想的基準如果不能比不太精確的比較工作更多地節省時(shí)間、降低成本或者減小風(fēng)險,那是不切實(shí)際的。
對于具有某一清晰目標的系統或任務(wù)來(lái)說(shuō),您常常會(huì )找到一個(gè)性能度量,用以精確獲取系統行為,并在您將該系統與其他選擇對象比較時(shí)具有良好的相關(guān)性。比較兩個(gè)處理器的時(shí)鐘速率就是獲得相對性能的一個(gè)流行的基準度量,但是它的適用環(huán)境很窄,只有當這兩個(gè)處理器除了時(shí)鐘速率之外大致相同時(shí),這種比較才有用。盡管比較基準測試評分的簡(jiǎn)單性如何吸引人,但正確解釋這些相互關(guān)聯(lián)的評分則需要您了解基準測量的基本細節及其與您應用系統的相關(guān)性。對于嵌入式設計來(lái)說(shuō),您比較的處理器體系結構可能大不相同,因此使用時(shí)鐘速率作為基準度量也許是不適宜的。
通常,嵌入式設計必須同時(shí)平衡并滿(mǎn)足許多目標,例如提供正確的功能既要快速、經(jīng)濟實(shí)惠,又要具有低功耗、高質(zhì)量和靈活性。就這幾類(lèi)情況而言,性能是多方面的,因此將系統性能精確地描述為一個(gè)簡(jiǎn)化的評分,用以與其他選擇對象進(jìn)行有意義的比較,可能是困難而又代價(jià)高昂的。對多個(gè)系統進(jìn)行比較存在一個(gè)難題,就是既要使獲得和導出基準測試評分簡(jiǎn)易而又花錢(qián)少,又要使不同系統的相同評分的排名有意義。
謊言和更多謊言
許多處理器供應商都使用基準測試評分作為一種營(yíng)銷(xiāo)工具。但是,有些經(jīng)常發(fā)布的基準測試評分,如MIPS(每秒百萬(wàn)條指令)和DMIPS(Dhrystone MIPIS),在沒(méi)有特定背景的情況下是毫無(wú)意義和不恰當的(參閱附文《基準測試游戲》)。這兩類(lèi)性能評分的繼續廣泛使用使得處理器基準測試獲得了對處理器性能度量不精確的名聲。一次網(wǎng)上搜索就會(huì )發(fā)現對下面關(guān)于標準基準測試的陳述的多次引用:“計算機行業(yè)有三種謊言:謊言、該死的謊言和基準測試?!?br/> 綜合基準測試通常試圖通過(guò)使用人工指令序列或者通過(guò)盡量模擬真實(shí)環(huán)境應用系統中的普通指令混合,來(lái)度量某個(gè)系統、處理器或編譯程序的一個(gè)或多個(gè)新性能。相反,真實(shí)環(huán)境應用系統基準測試在考慮處理器特性方面前進(jìn)了一步,它試圖對處理器體系結構和開(kāi)發(fā)工具如何處理特定類(lèi)型應用系統的預期工作量進(jìn)行預測和量化。應用系統基準測試可能使用一組或多組真實(shí)應用程序代碼塊來(lái)為一個(gè)應用系統實(shí)現代表性的功能。
公開(kāi)傳播諸如MIPS和DMIPS等標準綜合基準測試這種做法凸顯出人們需要開(kāi)發(fā)和使用簡(jiǎn)單而又有意義的度量。這幾類(lèi)基準測試相對比較便宜,也最容易實(shí)現,因而沒(méi)有容易而又低成本實(shí)現的無(wú)版權替代方案。行業(yè)標準基準測試是對競爭性產(chǎn)品進(jìn)行比較的基礎,但是,供應商通常要承擔一筆可觀(guān)的費用以便獲得基準測試證據。BDTI(Berkeley設計科技有限公司)、EEMBC(EDN嵌入式微處理器基準聯(lián)盟)和SPEC(標準性能評估公司)等基準組織通過(guò)提供能對目標性能測量進(jìn)行分類(lèi)的基準測試套件,致力于各種不同方面的計算。各種基準測試套件構成一致性測試的基礎,并支持一個(gè)性能評分的粒度范圍,使得您能夠在一個(gè)特定環(huán)境中更好地評估處理器特性和系統性能。
行業(yè)標準基準測試可以作為決策過(guò)程的一個(gè)有價(jià)值的“輸入”,但還不足以成為您設計決策的唯一依據。首先,為您應該考慮的每個(gè)處理器平臺找到相關(guān)而又可比的基準測試結果可能是很難或者是不可能的事。另一個(gè)問(wèn)題是,當您確定找到相關(guān)而又可比的基準測試時(shí),基準測試數據可能本來(lái)是為您當前正在考慮的一代代處于完全不同時(shí)間點(diǎn)的不同處理器導出的,而且它本可以采用的存儲器結構與您將要使用的迥然不同。特定的或自定義基準測試是分析過(guò)程的一部分,有助于填補行業(yè)標準基準測試與您應用需求之間的空白。
有幾類(lèi)基準測試用戶(hù)退出了。顯而易見(jiàn)的基準測試用戶(hù)是嵌入式系統設計師或者是成為銷(xiāo)售組織營(yíng)銷(xiāo)對象的終端用戶(hù)。但是,據幾個(gè)基準組織說(shuō),終端用戶(hù)并不是行業(yè)標準基準測試結果的主要用戶(hù)群體?;鶞蕼y試作為主要決策依據還不充分,因為它們不能精確地反映每個(gè)嵌入式系統設計師的應用需求。例如,許多基準測試是內核級的,不考慮與設計師在最終應用中要使用的操作系統的交互作用。
當終端用戶(hù)使用基準測試結果時(shí),他們同各個(gè)處理器廠(chǎng)商的合作常常比同基準組織的合作更為密切,以便獲得性能數據和復制測試結果方面的幫助,并了解基準測試配置如何適用于他們的設計要求。終端用戶(hù)可能使用基準測試作為縮減候選處理器名單的一個(gè)“輸入”,但是其他項目如一組集成特性、支持的I/O接口、開(kāi)發(fā)工具、培訓、文檔、第三方開(kāi)發(fā)支持基礎設施以及規劃風(fēng)險,都將在排除候選處理器時(shí)起重要作用。通常,終端用戶(hù)基準測試是一個(gè)僅適合于立即進(jìn)行的設計項目的特殊過(guò)程。
許多處理批量大而對價(jià)格敏感的設計的OEM(原始設備制造商),都根據自己的自定義基準測試來(lái)選擇處理器。自定義基準測試可以由既有應用代碼構成,但也可能包括來(lái)自行業(yè)標準基準測試的代碼。有些OEM成為基準組織的成員,以便獲得基準測試源代碼,因此,他們能將該源代碼的一部分合并到他們的自定義基準測試套件中。這些基準測試套件只能滿(mǎn)足范圍狹小的目標需求,所以更詳細、更全面。行業(yè)標準基準努力在相關(guān)性、復雜度和成本之間取得平衡,能滿(mǎn)足范圍較廣的應用需求。通常,OEM基準測試工作對競爭很敏感,只供內部使用
評論