zoukankan      html  css  js  c++  java
  • VC计算算法的CPU运行时间 Hello

    最近编写了曲线处理算法,为评估算法的效率,参考了相关的资料:

    GetTickCount可以到1820ms进度 

    timeGetTime可以到1ms精度(VC中没找到这个函数)

    汇编指令:RDTSC (就是 ReaD TimeStamp Count) 精度可以达到ns级别

    我在类头文件中加入下面的函数,不知道算不算是内联呢

           // 获取算法CPU运行时间ns

           unsigned __int64 GetCycleCount(void)

           {

                  __asm _emit 0x0F;

                  __asm _emit 0x31;

           }

    在程序中引用函数GetCycleCount()

                                //**获取算法运行CPU的时间CPUTime

                                unsigned long timeStmp = (unsigned long) GetCycleCount();

                               

                                //此处放置算法代码…..

                                //**计算CPU的运行时间CPUTime

                                timeStmp = (unsigned long) GetCycleCount() - timeStmp;

                                sprintf(sCPUTime,"运行时间: %f 毫秒",timeStmp/1000000.0);

    输出结果放在字符串sCPUTime.

  • 相关阅读:
    Volatile关键字
    ThreadPoolExecutor线程池基本原理及使用
    HashMap线程不安全源码解析(1.7 + 1.8)
    SpringBoot+ajax+formData实现图片上传和回显
    BloomFilter
    POST和GET
    快手电话面试
    Apache SSI 远程命令执行漏洞
    SYSTEM--服务器提权
    封神台靶场练习(2)
  • 原文地址:https://www.cnblogs.com/zhfen/p/816447.html
Copyright © 2011-2022 走看看