用PEAR::Benchmarking之Timer实现PHP程序计时

//创建一个对象
$timer = new Benchmark_Timer();

//计时开始
$timer->start();

//测试的一段脚本
for ($i=0; $i<1000; $i++)
{
//we do nothing here
}

//设置标记
$timer->setMarker("Mark1");

//输出两点之间的用时
echo $timer->timeElapsed("Start", "Mark1");
?>
然后执行之,就可以得到0.000543这样的结果,大致为从开始到Mark1点之间的耗时.
类方法
方法:Benchmark_Timer( [mixed $auto = false])
描述:构造器,开始计时器记录.
参数:boolean $auto,缺省为false,如果设定为true的话,则会自动打印计时器结果.形如下表
    time index    ex time    %
Start    1099020859.80505200    -    0.00%
Stop    1099020859.80595000    0.000898    100.00%
total    -    0.000898    100.00%

分别列出开始/终止的时间索引,与上一标记之间的运行时间,与上一标记之间的运行时间占总耗时的百分比(所以Stop点一直为100%),以及总耗时.
方法: display( )
描述:打印由getOutput方法返回的信息.
形如下表:
    time index    ex time    %
Start    1099021292.32145600    -    0.00%
Mark1    1099021292.32202000    0.000564    46.38%
Mark2    1099021292.32209700    0.000077    6.33%
Stop    1099021292.32267200    0.000575    47.29%
total    -    0.001216    100.00%

列出每一标记的时间索引,与上一标记之间的运行时间,与上一标记之间的运行时间占总耗时的百分比,以及总耗时.
调用该方法前,应该先调用stop()来终止计时(并不会终止程序).见例2. 方法: getOutput( )
描述:返回格式化后的计时器信息. 该方法把计时器信息放如一个表中(如上表),供display()方法列出.
方法:getProfiling( )
描述:返回计时器信息.将是形如
Array
(
[0] => Array
(
[name] => Start
[time] => 1099021787.69669100
[diff] => -
[total] => 1099021787.696691
)

[1] => Array
(
[name] => Mark1
[time] => 1099021787.69675900
[diff] => 0.000068
[total] => 1099021787.696759
)

[2] => Array
(
[name] => Mark2
[time]

时间: 2024-09-23 00:38:22

用PEAR::Benchmarking之Timer实现PHP程序计时的相关文章

CUDA中如何使用Event进行程序计时

GPGPU是众核设备,包含大量的计算单元,实现超高速的并行. 使用CUDA在nvidia显卡上面编程时,可以使用CUDA提供的Event进行程序计时. 当然,每种编程语言基本都提供了获取系统时间的函数,如C/C++/Java 程序计时功能函数 Event可以统计GPU上面某一个任务或者代码段的精确运行时间. 如下面的程序实例(CalTime.cu): #include<stdio.h> #include<cuda_runtime.h> //__global__声明的函数,告诉编译器

总结UNIX/LINUX下C++程序计时的方法_C 语言

前言 良好的计时器可帮助程序开发人员确定程序的性能瓶颈,或对不同算法进行性能比较.但要精确测量程序的运行时间并不容易,因为进程切换.中断.共享的多用户.网络流量.高速缓存访问及转移预测等因素都会对程序计时产生影响. 下面看看小编为大家整理几个计时方法 方法一: 如果是想统计某个程序的运行时间,那么可以使用 time ./a.out 方法二: 如果是想对某个函数或者语句进行计时,那么有别的方法.比如说,gettimeofday函数.直接贴示例代码: #include <sys/time.h> v

C/C++/Java 程序计时功能函数

编写程序肯定要使用计时功能,来判断程序的执行时间.今天Google了一下,自己就梳理总结一下: (1)C/C++程序计时 C/C++中使用的计时函数是clock(). C语言中的头文件对应是#include<time.h>,C++中对应的头文件为#include<ctime>. 如下程序实例,其中clock_t为long类型,CLOCKS_PER_SEC为每秒的时钟周期常数: 1 #include<iostream> 2 #include <ctime> 3

CUDA使用Event进行程序计时

GPGPU是众核设备,包含大量的计算单元,实现超高速的并行. 使用CUDA在nvidia显卡上面编程时,可以使用CUDA提供的Event进行程序计时. 当然,每种编程语言基本都提供了获取系统时间的函数,如C/C++/Java 程序计时功能函数 Event可以统计GPU上面某一个任务或者代码段的精确运行时间. 如下面的程序实例(CalTime.cu): 1 #include<stdio.h> 2 #include<cuda_runtime.h> 3 4 //__global__声明的

Pear Benchmarking测试PHP程序效率

以前都是自己用microtime()鼓捣的,不好用,显示结果也不够清晰明了. 记得pear里面有个Benchmarking类可以搞定,一直没时间尝试下,终于刚才尝试了下,很好用,呵呵 先安装Benchmarking pear install Benchmarking#命令行下安装Benchmarking Benchmarking中有3个php文件,分别是: Benchmark_Timer 这个包里面最基本的类. 执行简单的函数去记录总的时间和设定的代码片段时间. Benchmark_Profil

用PEAR来写你的下一个php程序

程序     你可能已经是个PHP的老手了,写了很多非常棒的代码.但是,如果你现在要把它们加入到你现在的项目中去,是否有些吃力?你的朋友想使用你的代码作为他的项目中的一个模块,但是你发现你们使用了截然不同的编码风格,让他适应,甚至不如重写一个!请跟我来,使用PEAR标准编写你的PHP程序吧,你的程序将会拥有更大的活力,你的程序和代码将会很方便地和其他高手的代码融合在一起,PEAR就象CPAN对于PERL一样,会让PHP产生更高的能量. 什么是PEAR PEAR是PHP扩展与应用库(the PHP

PEAR简介:用PEAR来写你的下一个php程序

PEAR简介:用PEAR来写你的下一个php程序           内容: 什么是PEAR 为什么要使用PEAR? PEAR能给我带来什么好处? PEAR的编码规则 开始使用PEAR 总结 相关资源 作者简介 潘凡(Night Sailer) (nightsailer@hotmail.com)北京赛迪网信息技术有限公司2001 年 6 月你可能已经是个PHP的老手了,写了很多非常棒的代码.但是,如果你现在要把它们加入到你现在的项目中去,是否有些吃力?你的朋友想使用你的代码作为他的项目中的一个模

php 什么是PEAR?_php基础

PHP爱好者必喜欢PEAR,我们的目的就是希望将PEAR介绍给PHP的程式开发人员,我个人认为引用程式库的程式开发方式已经渐渐成为趋势了,除了php.JSP外,像perl.C++也都有专属的程式库供其开发人员引用. 借着引入PEAR,php的程式开发者除了可以大幅缩減撰写程式码的工作与时间外,还可以用很简单的方式得到许多強大的动态网页功能,我将会列举许多的实例,让大家看了后,一定会啪掌叫好,並深深的迷上了PEAR.此外,程式码很容易维护,安全性高也是PEAR另2个很吸引人的优点,PAER程式库宛

细看PEAR的错误处理

错误|错误处理 PEAR提供了强大的错误处理机制.这篇文章向你展示如何从这个系统中获益. 许多程序已经使用了PEAR的包.许多PHP程序员或多或少的熟悉了PEAR中的错误处理.但是这个机制并不局限于PEAR的包--所有人都能在他们的类和程序中使用这些方法. 这篇文章被分为两个部分:首先我们将看看类中用于错误处理的函数,然后我们将看看如何基于PEAR错误处理机制来处理错误. 我们的例子类称为cvs2db,它把数据从CSV文件插入到数据库的表中.因为数据可能是手写的,他们的数据应该在插入之前先得到验