標簽:
TPC-C基準程序用來衡量整個IT系統的性能,而不是評價服務器或某種硬件系統的標準,其中性能由tpmC衡量。TPC-H所報告的性能計量單位被稱為“TPC-H復合式每小時查詢性能單位(QphH)”,反映出了系統處理查詢的多方面能力。
TPC體系是影響最大的評測基準之一。
TPC(TransactionProcessing Performance Council,事務處理性能委員會)是由數十家會員公司創建的非贏利組織,總部設在美國。
TPC不給出基準程序的代碼,而只給出基準程序的標準規范。任何廠家或其他測試者都可以根據規范,最優地構造出自己的測試系統(測
試平臺和測試程序)。為保證測試結果的完整性,被測試者(通常是廠家)必須提交給TPC一套完整的報告,包括被測系統的詳細配置、分類價格和包含5年維護 費用在內的總價格。該報告必須由TPC授權的審核員核實(TPC本身并不做審計)。TPC在全球只有不到10名審核員,而且全部在美國。
TPC推出過11套基準程序,分別是正在使用的TPC-App、TPC- H、TPC-C、TPC-W,過時的TPC-A、TPC-B、TPC-D和TPC-R,以及因為不被業界接受而放棄的TPC-S(Server專門測試基 準程序)、TPC-E(大型企業信息服務測試基準程序)和TPC-Client/Server。目前最為“流行”的TPC-C是聯機事務處理(OLTP) 的基準程序,于1992年7月完成,后被業界逐漸接受。
TPCC 標準
作為一家非盈利性機構,事務處理性能委員會(TPC)負責定義諸如TPC-C、TPC-H和TPC-W 基準測試之類的事務處理與數據庫性能基準測試,并依據這些基準測試項目發布客觀性能數據。TPC基準測試采用極為嚴格的運行環境,并且必須在獨立審計機構 監督下進行。委員會成員包括大多數主要數據庫產品廠商以及服務器硬件系統供應商。
相關企業參與TPC基準測試以期在規定運行環境中獲得客觀性能驗證,并通過應用測試過程中所使用的技術開發出更加強健且更具伸縮性的軟件產品及硬件設備。
TPC-C是一種旨在衡量聯機事務處理(OLTP)系統性能與可伸縮性的行業標準基準測試項目。這種基準測試項目將對包括查詢、更新及隊列式小批量事務在內的廣泛數據庫功能進行測試。許多IT專業人員將TPC-C視為衡量“真實”OLTP系統性能的有效指示器。
TPC- C基準測試針對一種模擬訂單錄入與銷售環境測量每分鐘商業事務(tpmC)吞吐量。特別值得一提的是,它將專門測量系統在同時執行其它四種事務類型(如支
付、訂單狀態更新、交付及證券級變更)時每分鐘所生成的新增訂單事務數量。獨立審計機構將負責對基準測試結果進行公證,同時,TPC將出據一份全面徹底的 測試報告。這份測試報告可以從TPC
Web站點上獲得。
TPC-E——OLTP聯機事務處理測試新模型
20年前,美國的TPC(事務處理性能委員會,Transaction Processing Performance Council)成立之時,或許并沒有想到其TPC系列測試標準會如此受業界關注。作為國際上權威的服務器性能測試組織。目前在國際上幾乎所有IT界的知 名廠商(如IBM、HP、SUN、英特爾等)都是TPC的會員。
OLTP測試模型一直是TPC組織的重點測試標準,TPC-C的前身TPC-A就是TPC組織發布的第一個測試標準。由于TPC-C逼真地 模擬了OLTP應用,在發布后逐漸得到廣大用戶的認可,使用tpmC作為其計算機系統性能評價體系基礎的用戶數量逐年上升。不過,隨著信息產業的不斷發 展,TPC-C的一些問題也慢慢暴露出來。首先,隨著B2B、B2C等新型應用逐漸興起,TPC-C現有的倉庫管理系統測試模型已經距離目前的OLTP用 戶應用模式越來越遠,5種作業需求也不足以覆蓋用戶現有的典型操作;其次,眾多的測試設備投入使得TPC-C測試給廠商帶來了較大的壓力,這并不是TPC 組織愿意看到的,因此TPC組織于2007年3月推出了全新的OLTP測試標準——TPC-E,意在用這個測試標準取代TPC-C測試,從而對上述問題起 到解決作用。
TPC-E在測試模型上進行了巨大的革新與改進。TPC-E是以美國紐約證券交易所為模型,該測試模擬了一系列后端處理數據以及證券公司前端客戶在股票交易市場的典型行為——賬戶查詢、在線交易和市場調研。
與TPC-C測試模型相比,TPC-E更加強調模型的高仿真性,其模型微縮模擬了全球最大電子股票交易市場——美國納斯達克股市的日常業務 流程,模型架構完成了從C/S架構到B/S架構的過渡,是典型的互聯網時代OLTP性能測試基準。同時,數據類型更加豐富,由3類擴展為10類,模擬的交 易條件更復雜。
TPC-H關注查詢能力
TPC-H是一種決策支持基準。它包含一整套面向商業的特殊查詢和并發數據修改內容。該基準中選擇的查詢和數據庫中的數據都具有廣泛的全行業關聯性。這種測試基準所描述的決策支持系統可檢查大量的數據,所執行的查詢也具有很高的復雜度。
TPC-H所報告的性能計量單位被稱為“TPC-H復合式每小時查詢性能單 位”(TPC-H Composite Query-per-Hour Performance Metric -
QphH@Size),反映的是系統處理查詢的多方面能力,包括查詢執行時選定的數據庫大小、單個流提交查詢時的查詢處理能力,以及多個并發用戶提交查詢 時的查詢吞吐量。TPC-H的價格/性能比計量單位的表達方式為$/QphH@Size。
應用性能參考SPEC
SPEC是標準性能評估公司(Standard Performance Evaluation Corporation)的簡稱。SPEC是由計算機廠商、系統集成商、大學、研究機構、咨詢等多家公司組成的非營利性組織,這個組織的目標是建立、維護 一套用于評估計算機系統的標準。
與TPC體系注重在線處理能力和數據庫查詢能力不同,SPEC體系中最廣為人知的兩個子項,是衡量CPU、內存性能的CPU2000和Web服務器性能的web2005。另外還有一個衡量Java服務器性能的jbb2005,近年來也逐漸受到關注。
除了TPC家族,SPEC家族也是廣為人知的一大體系。SPEC指標體系由 Standard Performance Evaluation Corp.制定,目前主要包括針對CPU性能的SPEC CPU2000(已有CPU2006,但尚無數據)、針對Web服務器的SPECweb2005、針對高性能計算的SPEC HPC2002與SPEC MPI2006、針對Java應用的jAppServer2004與JBB2005,以及對圖形系統、網絡和郵件服務器的測試指標。
SPEC CPU 2006
SPEC CPU 2006是SPEC組織推出的CPU子系統評估軟件最新版,在早些年,業界使用的是其上一個版本SPEC CPU 2000。和SPEC CPU 2000一樣,SPEC CPU 2006包括了CINT2006和C FP2006兩個子項目,前者用于測量和對比整數性能,而后者則用于測量和對比浮點性能,SPEC CPU 2006中對SPEC CPU 2000中的一些測試進行了升級,并拋棄/加入了一些測試,因此兩個版本測試得分并沒有可比較性。
SPEC CPU測試中,測試系統的處理器、內存子系統和使用到的編譯器(SPEC CPU提供的是源代碼,并且允許測試用戶進行一定的編譯優化)都會影響最終的測試性能,而I/O(磁盤)、網絡、操作系統和圖形子系統對于SPEC CPU2006的影響非常的小。
An ounce of honest data is worth a pound of
marketing hype(一盎司誠實的數據值得一磅的市場宣傳)是SPEC組織成立的座右銘,為了保持數據的公平、可信度以及有效,SPEC CPU測試使用了現實世界的應用程序,而不是用循環的算術操作來進行基準測試。SPEC CPU 2006包括了12項整數運算和17項浮點運算,除此之外,還有兩個隨機數產生測試程序998.sperand(整數)和999.specrand(浮
點),它們雖然也包含在套件中并得到運行,但是它們并不進行計時以獲得得分。這兩個測試主要是用來驗證一些其他組件中會用到的PRNG隨機數生成功能的正 確性。各個測試組件基本上由C和Fortran語言編寫,有7個測試項目使用了C++語言,而Fortran語言均用來編寫浮點部分。
CINT2006包括C編譯程序、量子計算機仿真、下象棋程序等,CFP2006包括有限元模 型結構化網格法、分子動力學質點法、流體動力學稀疏線性代數法等。為了簡化測試結果,SPEC決定使用單一的數字來歸納所有12種整數基準程序。具體方法 是將被測計算機的執行時間標準化,即將被測計算機的執行時間除以一個參考處理器的執行時間,結果稱為SPECratio。SPECratio值越大,表示 性能越快(因為SPECratio是執行時間的倒數)。CINT2006或CFP2006的綜合測試結果是取SPECratio的幾何平均值。
JAVA應用性能測試——SPEC jbb2005
SPECjbb2005是由Standard Performance Evaluation Corp(標準性能評估組織)提供的、專供檢測服務器 JAVA應用性能的測試軟件,SPEC是由著名計算機廠商、系統集成商、大學、研究所、出版商等組成的非贏利性組織。目前,SPEC得到了包括IBM、 HP、Intel、Compaq等主要服務器廠商的認可。
SPECjbb2005(Java服務器基準)是評估服務器端JAVA性能的SPEC測試工具。和以前的SPECjbb2000一
樣,SPECjbb2005通過模擬三層C/S系統(主要是中間層)來評估服務器端JAVA的性能。該測試軟件運行JVM(Java虛擬機)、JIT (Just-In-Time)編譯器、碎片收集、線程以及操作系統的其他任務。它也測量CPU、Cache、內存和 SMP的性能。SPECjbb2005通過提供面向對象方式運行的、新的增強的工作負載,來反映真實應用系統的情況。另外,SPECjbb2005也引入 了一些新的特性,如XML處理和BigDecimal計算,以保證測試結果能更確切地反映當前的實際應用。
SPECjbb2005是一種被廣泛使用的工業標準基準測試。概括來講,每個"warehouse"會產生一個獨立的線程,從而決定測試線程的并發數。
SPEC Web2005
Web服務參考Web2005
作為SPECweb99和SPECweb99_SSL的繼承者,SPECweb2005延續了SPEC的傳統,為Web用戶提供客觀的Web服務器系統性能測試基準。
SPEC
Web2005測試的原理,是通過多臺客戶機向服務器發出Http Get請求,請求調用Web服務器上的網頁文件,這些文件從數千字節到數兆字節不等。在相同的時間里,服務器回答的請求越多,就表明服務器對客戶端的處理能力越強,系統的Web性能就越好。
基于快速發展的Web技術,與上一代測試基準相比,SPECweb2005基準包括許多新增強特性,其中包括:
● 測量并發用戶會話。
● 相關動態內容:包括PHP和JSP實施。
● 使用兩個并行HTTP連接請求頁面鏡像。
● 多種標準化的工作負載:銀行業(HTTPS)、電子商務(HTTP and HTTPS)和支持(HTTP)。
● 使用If-Modified-Since請求模擬模擬器緩存效果。
● 文件訪問與今天的真實Web服務器訪問模式匹配度更高。
|