3、英特爾處理器對浮點運算能力的加強
英特爾®至強®處理器系列與英特爾®安騰®處理器系列通過先進的處理器體系架構(gòu)對系統(tǒng)的浮點運算能力進行了優(yōu)化與加強,在Linpack,SPECfp2000等多項基準測試中均體現(xiàn)出優(yōu)異的性能,其主要策略是并行計算與大量的內(nèi)核資源。
以安騰系統(tǒng)的EPIC架構(gòu)為例,其大量的寄存器資源(264個通用寄存器)可以保證每時鐘周期6條指令的并發(fā)執(zhí)行,同時,豐富的板上資源,包括24MB的二級緩存可以使得所有處理器浮點運算單元保持高效運轉(zhuǎn),減少等待造成的系統(tǒng)空閑。同時,多線程、多核技術(shù)的應(yīng)用進一步強化了其并行能力,使其在各項基準測試中的浮點性能進一步提升。
第二節(jié):在線事務(wù)處理能力的衡量
對于大多數(shù)的商業(yè)用戶來說,對于服務(wù)器系統(tǒng)的要求與科學(xué)計算用戶有著明顯的區(qū)別。對于這部分用戶來說,他們更關(guān)注服務(wù)器對于交易的處理能力以及處理成本,而不是峰值、單CPU的運算能力。
在衡量基于數(shù)據(jù)庫應(yīng)用的服務(wù)器性能時,在線事務(wù)交易處理(OLTP)系統(tǒng)性能成為一個關(guān)鍵指標。在現(xiàn)有的Benchmark體系中,有三個基準測試可以幫助用戶有效衡量服務(wù)器系統(tǒng)的OLTP性能,就是TPC-C、TPC-H和SPECCPU。
深入了解TPC-C
1、TPC-C衡量系統(tǒng)整體
TPC-C是一種旨在衡量聯(lián)機事務(wù)處理(OLTP)系統(tǒng)性能與可伸縮性的行業(yè)標準基準測試項目。這種基準測試項目將對包括查詢、更新及隊列式小批量事務(wù)在內(nèi)的廣泛數(shù)據(jù)庫功能進行測試。對于數(shù)據(jù)庫密集型應(yīng)用來說,TPC-C被許多IT專業(yè)人員視為衡量真實OLTP系統(tǒng)性能的有效指示器。
TPC-C測試規(guī)范經(jīng)過兩年的研制,于1992年7月發(fā)布。幾乎所有在OLTP市場提供軟硬件平臺的廠商都發(fā)布了相應(yīng)的TPC-C測試結(jié)果,隨著計算機技術(shù)的不斷發(fā)展,這些測試結(jié)果也在被不斷刷新。
獨立審計機構(gòu)負責(zé)對基準測試結(jié)果進行公證,同時,TPC將出據(jù)一份全面的測試報告,用戶可以從TPC站點(http://www.tpc.org/)上獲得。
TPC-C測試規(guī)范中模擬了一個比較復(fù)雜并具有代表意義的OLTP應(yīng)用環(huán)境:假設(shè)有一個大型商品批發(fā)商,它擁有若干個分布在不同區(qū)域的商品庫;每個倉庫負責(zé)為10個銷售點供貨;每個銷售點為3000個客戶提供服務(wù);每個客戶平均一個訂單有10項產(chǎn)品;所有訂單中約1%的產(chǎn)品在其直接所屬的倉庫中沒有存貨,需要由其他區(qū)域的倉庫來供貨。
TPC-C測試包括5個典型的OLTP事務(wù):
新訂單:一個用戶提交一個新的訂單
支付:更新用戶的賬戶余額以反映一個支付
交付:訂單的交付(通過一個批事務(wù)處理實現(xiàn))
訂單狀態(tài):返回用戶最新訂單的狀態(tài)
庫存水平:監(jiān)控當前倉庫庫存
對于前四種類型的交易,要求響應(yīng)時間在5秒以內(nèi);對于庫存狀況查詢交易,要求響應(yīng)時間在20秒以內(nèi)。
TPC-C的測試結(jié)果主要有兩個指標:
流量指標(Throughput,簡稱tpmC)
按照TPC的定義,流量指標描述了系統(tǒng)在執(zhí)行支付、訂單狀態(tài)更新、交付及存貨變更這四種交易的同時,每分鐘可以處理多少個新訂單交易。所有交易的響應(yīng)時間必須滿足TPC-C測試規(guī)范的要求。流量指標值越大越好。
性價比(Price/Performance,簡稱Price/tpmC)即測試系統(tǒng)價格(指在美國的報價)與流量指標的比值。性價比越小越好。
基于四核英特爾®至強®5300系列處理器的服務(wù)器平臺數(shù)據(jù)庫性能
2、解讀tpmC
tpmC代表的是系統(tǒng)最大的持續(xù)性能,它被定義為系統(tǒng)每分鐘可以處理多少個新訂單事務(wù),與此同時,系統(tǒng)還在處理其他四種事務(wù)類型(支付、訂單狀態(tài)、交付、庫存水平)。所有5個TPC-C事務(wù)都有某個限定的用戶響應(yīng)時間要求,其中新訂單事務(wù)的響應(yīng)時間是5秒以內(nèi)。因此如果一個系統(tǒng)的TPC-C值是100tpmC/min,說明該系統(tǒng)在每分鐘處理其他的混合的TPC-C事務(wù)的工作的同時,可以產(chǎn)生100個新訂單事務(wù)。
從TPC-C的定義不難知道,這套基準測試程序是用來衡量整個IT系統(tǒng)的性能,而不是評價服務(wù)器或某種硬件系統(tǒng)的標準,而且tpmC數(shù)值的高低直接受到各個環(huán)節(jié)的影響,如服務(wù)器、外設(shè)(如硬盤或RAID)、服務(wù)器端操作系統(tǒng)、數(shù)據(jù)庫軟件、客戶端及其操作系統(tǒng)、數(shù)據(jù)庫軟件和網(wǎng)絡(luò)連接等。因此,如何解讀tpmC數(shù)值會因不同的采購需求有非常大的差異。
例如,在很多廠家的TPC測試系統(tǒng)中,服務(wù)器的價格只是系統(tǒng)總價格的25%或更小,而硬盤的價格有可能占到總價格的30%以上,因為TPC-C要求被測系統(tǒng)必須保存180天的事務(wù)記錄(這一趨勢從一些最新的TPC-C測試結(jié)果來看,會愈演愈烈)。如果同樣的服務(wù)器被用到用戶的環(huán)境中,廠家的tpmC值就意義不大,因為用戶的實際系統(tǒng)與廠家原來用于TPC測試的系統(tǒng)大不一樣。當同樣的主機用在不同的系統(tǒng)中時,tpmC值可能有相當大的變化,現(xiàn)在許多用戶還沒有意識到這一點。
尤其需要服務(wù)器采購用戶注意的是,tpmC指標更多的是衡量從客戶端到終端網(wǎng)絡(luò)的性能區(qū)域,而不是通常誤認為的服務(wù)器到企業(yè)端網(wǎng)絡(luò)的性能。由此可見,如果用戶是建立一套全新的業(yè)務(wù)系統(tǒng),那么無妨多借鑒tpmC的性能指標,如果只是采購某種或某些硬件設(shè)備,則需要參考更多的指標。
我們看到,隨著處理器技術(shù)的不斷創(chuàng)新,市場上各個廠商服務(wù)器性能在不斷提升,例如去年11月惠普公布了一項TPC-C測試結(jié)果,配置了兩顆主頻為2.66GHz、總線速度達1333MHz的四核英特爾®至強®X5355處理器(兩顆處理器,共8核,8線程)以及4MB二級緩存和64GB主內(nèi)存,運行Microsoft Windows Server 2003 EE x64操作系統(tǒng)和Microsoft SQL Server 2005 Enterprise x64 Edition SP1數(shù)據(jù)庫的HP ProLiant ML370 G5服務(wù)器取得了64位計算環(huán)境中240,737tpmC的TPC-C測試好成績,平均每tpmC的成本僅為1.85美元。
這是全球四核處理器服務(wù)器的第一個TPC-C基準測試成績,成為了當時兩路服務(wù)器、雙處理器的最好成績,而每tpmC 1.85美元的成績也是基于雙處理器平臺的Microsoft SQL Server 2005數(shù)據(jù)庫的最佳性價比。相比上一代產(chǎn)品,性能有3倍的增長,而與相同配置的雙核處理器的服務(wù)器相比,性能有42%的提升。從中我們可以看到,處理器本身對于服務(wù)器的性能幾乎起著決定性的作用。
TPC-H關(guān)注查詢能力
TPC-H測量在商業(yè)分析中決策支持系統(tǒng)(DSS)的性能。DSS是一種計算機應(yīng)用程序,它分析商業(yè)數(shù)據(jù)展現(xiàn)出來使用戶/管理者可以更容易得進行商業(yè)決策,例如供求管理、客戶滿意度分析、市場份額分析等。
TPC-H 模擬了商業(yè)環(huán)境中的分析端,大量的數(shù)據(jù)被細化,可以幫助企業(yè)進行可靠的商業(yè)決策,其中包含一整套面向商業(yè)的特殊查詢和并發(fā)數(shù)據(jù)修改內(nèi)容。該基準中選擇的查詢和數(shù)據(jù)庫中的數(shù)據(jù)都具有廣泛的全行業(yè)關(guān)聯(lián)性。這種基準測試所描述的決策支持系統(tǒng)可檢查大量的數(shù)據(jù),所執(zhí)行的查詢也具有很高的復(fù)雜度。并且,TPC-H會基于數(shù)據(jù)庫的大小將結(jié)果分類。
TPH的性能度量單位有兩個,一個被稱為"TPC-H復(fù)合式每小時查詢性能單位"(TPC-H Composite Query-per-Hour Performance Metric – QphH@Size),反映的是系統(tǒng)處理查詢的多方面能力,包括查詢執(zhí)行時選定的數(shù)據(jù)庫大小、單個流提交查詢時的查詢處理能力,以及多個并發(fā)用戶提交查詢時的查詢吞吐量。另外一個,是價格/性能比計量單位$/QphH。
SPEC CPU2006中的學(xué)問
對于關(guān)注在線事務(wù)交易處理能力的用戶來說,SPEC CPU2006也是一項非常重要的基準測試指標。
就像前面提到的,SPEC CPU2006是一組針對CPU和內(nèi)存的測試,它主要測試的對象是CPU、內(nèi)存,不測試硬盤、I/O效率和網(wǎng)絡(luò)等部分。因為SPEC CPU2006的程序都是針對單CPU的系統(tǒng)設(shè)計,因此,在多CPU系統(tǒng)上,如果要測試多CPU系統(tǒng)的效率,則是采取同時執(zhí)行多個相同程序的方法,這個結(jié)果就是"Rate"。因此,同樣有SPECint_rate和SPECfp_rate的測試結(jié)果。需要說明的是,"Rate"測試同時執(zhí)行多個相同的程序,但程序之間并不會有關(guān)聯(lián),所以這是一種理論計算能力測試,并不代表實際并行計算能力。