簡單效能測試函式模板

2021-07-04 09:31:01 字數 1178 閱讀 9647

剛買到《c++ primer》第五版中文版,看了幾章內容,深感c++11之完善。因學習過程中經常要寫點片段**,故寫了個耗時測試函式模板,以測試**效能。此測試函式使用了c++11的可變引數模板和右值引用語法,在tdm-gcc 5.1.0新增「-std=c++11」選項編譯通過。本人還未完全了解c++11,有不完善之處,敬請賜教。

#ifndef perftest_h

#define perftest_h

#include

#include

//呼叫n趟函式並計時

//n :呼叫次數

//func:被調函式

//args:被調引數

//返回:耗時,單位秒,精度毫秒

template

double timing_n(const size_t n, functype func, argtypes&&... args)

#endif

被調函式引數args以右值引用方式傳入,以滿足字面量引數和引用引數雙重需求,再用forward函式模板**。

用法示例:

#include #include "perftest.h"

//被測試函式

//臨時變數交換法

void swapbytmp(int& a, int& b)

//異或運算交換法

void swapbyxor(int& a, int& b)

int main(int argc, char *argv)

{ using namespace std;

const size_t pass = 1000000000; //測試迴圈次數 1,000,000,000 即 10^9

cout<<"swap two var "《在i7-3770 windows7電腦上,以「-o2」優化,輸出結果:

swap two var 1000000000 times

function temp var swap time = 0.359

function xor calc swap time = 4.135

lambda temp var swap time = 0.343

lambda xor calc swap time = 0.546





Python效能測試函式

python 社群有句俗語 python 自己帶著電池。別自己寫計時框架。python 2.3以後 具備乙個叫做 timeit 的完美計時工具。diveinto中的例子 import timeit t timeit.timer soundex.soundex pilgrim import sound...

jemter簡單效能測試詳解

1.首先我的英文不是很好,我需要將英文改成中文,方法非常簡單,選擇options choose language chinese即可.兩個chinese乙個是簡體中文,乙個是正體中文 2.選擇檔案 新建測試計畫 3.左鍵點選測試計畫,右鍵點選新增執行緒 使用者 執行緒組 4.執行緒數 執行緒數也就是...

sanic和tornado的簡單效能測試

作業系統 centos7.3.1611 x64 python 版本 3.6.8 tornado版本 6.0.2 sanic版本 19.9.0 cpu intel r core tm i5 2320 cpu 3.00ghz 4核 之前一直使用tornado作為http相關python程式的框架,最近查...