标签: execution-time

如何从PHP获取MySQL查询的执行时间?

我从PHP执行MySQL查询,并想知道它们是多么耗时.有没有办法从PHP获取MySQL查询的执行时间?

我也想知道执行时间是否取决于Web服务器的加载方式.我可以想象,如果服务器忙于其他查询,查询将花费更多时间来执行.另一方面,我可以想象,如果服务器忙,查询将等待轮到它然后它将被执行(没有任何并行执行的查询)并且等待时间不包括在执行时间中.那么,两种情况中的哪些情况是正确的?

php mysql webserver execution-time

28
推荐指数
2
解决办法
5万
查看次数

Java匿名类效率的含义

这两种做事方式之间的效率(例如执行时间,代码大小等)是否有任何差异?

下面是创建对象并且什么也不做的人为设想的示例,但我的实际场景可能是创建新的线程,监听器等.假设以下代码片段在循环中发生,以便它可能有所作为.

使用匿名对象:

void doSomething() {
    for (/* Assume some loop */) {
        final Object obj1, obj2; // some free variables

        IWorker anonymousWorker = new IWorker() {
            doWork() {
                // do things that refer to obj1 and obj2
            }
        };
    }
}
Run Code Online (Sandbox Code Playgroud)

首先定义一个类:

void doSomething() {
    for (/* Assume some loop */) {
        Object obj1, obj2;
        IWorker worker = new Worker(obj1, obj2);
    }
}

static class Worker implements IWorker {
    private Object obj1, obj2;
    public CustomObject(Object obj1, Object obj2) {/* …
Run Code Online (Sandbox Code Playgroud)

java performance anonymous-class execution-time

27
推荐指数
5
解决办法
1万
查看次数

PHPUnit打印测试执行时间

有没有办法用PHPUnit打印每个测试的执行时间?

php phpunit execution-time

24
推荐指数
5
解决办法
1万
查看次数

在R中获得以毫秒为单位的执行时间

我已经阅读了这个解决方案 tic(), toc() functions

tic <- function(gcFirst = TRUE, type=c("elapsed", "user.self", "sys.self"))
{
   type <- match.arg(type)
   assign(".type", type, envir=baseenv())
   if(gcFirst) gc(FALSE)
   tic <- proc.time()[type]         
   assign(".tic", tic, envir=baseenv())
   invisible(tic)
}

toc <- function()
{
   type <- get(".type", envir=baseenv())
   toc <- proc.time()[type]
   tic <- get(".tic", envir=baseenv())
   print(toc - tic)
   invisible(toc)
}




tic();
-----code----
toc();


elapsed 
   0.15 
Run Code Online (Sandbox Code Playgroud)

但我想在几毫秒内获得很多精度?

我也在用这个

ptm <- proc.time()
---code
proc.time() - ptm
Run Code Online (Sandbox Code Playgroud)

得到这个

   user  system elapsed 
   1.55    0.25    1.84 
Run Code Online (Sandbox Code Playgroud)

如何获得更多小数或更精确?

benchmarking r execution-time milliseconds

22
推荐指数
2
解决办法
2万
查看次数

gcc -O0在2的幂(矩阵换位)矩阵大小上表现优于-O3

(出于测试目的)我编写了一个简单的方法来计算nxn矩阵的转置

void transpose(const size_t _n, double* _A) {
    for(uint i=0; i < _n; ++i) {
        for(uint j=i+1; j < _n; ++j) {
            double tmp  = _A[i*_n+j];
            _A[i*_n+j] = _A[j*_n+i];
            _A[j*_n+i] = tmp;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当使用优化级别O3或Ofast时,我期望编译器展开一些循环,这将导致更高的性能,尤其是当矩阵大小是2的倍数(即,每次迭代可以执行双循环体)或类似时.相反,我测量的恰恰相反.2的权力实际上表明执行时间显着增加.

这些尖峰也是64的固定间隔,间隔128更明显,依此类推.每个尖峰延伸到相邻的矩阵大小,如下表所示

size n  time(us)
1020    2649
1021    2815
1022    3100
1023    5428
1024    15791
1025    6778
1026    3106
1027    2847
1028    2660
1029    3038
1030    2613
Run Code Online (Sandbox Code Playgroud)

我使用gcc版本4.8.2编译但是同样的事情发生在clang 3.5上,所以这可能是一些通用的东西?

所以我的问题基本上是:为什么执行时间周期性增加?是否有一些通用的东西与任何优化选项一起出现(就像clang和gcc一样)?如果是这样的优化选项导致了这个?

这怎么可能如此重要,即使O0版本的程序在512的倍数时优于03版本?

执行时间与O0和O3的矩阵大小


编辑:注意此(对数)图中峰值的大小.转换具有优化的1024x1024矩阵实际上花费的时间与在没有优化的情况下转置1300x1300矩阵一样多.如果这是一个缓存故障/页面错误问题,那么有人需要向我解释为什么内存布局对于程序的优化版本是如此显着不同,它失败的功能为2,只是为了恢复高性能稍大的矩阵.缓存故障是否应该创建更多类似步骤的模式?为什么执行时间会再次下降?(为什么优化会创建以前不存在的缓存错误?)


编辑:以下应该是gcc生成的汇编代码

没有优化(O0):

_Z9transposemRPd:
.LFB0:
    .cfi_startproc
    push    rbp …
Run Code Online (Sandbox Code Playgroud)

c++ gcc linear-algebra execution-time compiler-optimization

22
推荐指数
1
解决办法
581
查看次数

如何使用精确控制的执行时间启动Java程序?

正如我在启动Java应用程序之前所知道的那样,它为它分配了一些RAM,并且这个内存可以在启动之前由用户控制.但是当我启动应用程序时,每次都有不同的执行时间,还有另一个问题.

这是一个非常简单的for循环示例:

package timespent;

public class Main {

    public static void main(String[] args) {

        long startTime = System.nanoTime();

        int j = 0;

        for (int i = 0; i < 1.E6; i++) {
            j = i + 1;
        }

        long endTime = System.nanoTime();

        long duration = (endTime - startTime);

        System.out.println("duration = " + duration);
    }
}
Run Code Online (Sandbox Code Playgroud)

它打印出不同的结果:

duration = 5720542
duration = 7331307
duration = 7737946
duration = 6899173
Run Code Online (Sandbox Code Playgroud)

假设我希望它能够精确地执行10,000,000纳秒或10毫秒.

我想要什么?

我希望java应用程序执行精确的时间执行.

我为什么需要这个?

当我启动一个应用程序时,我想在加载所有组件之前显示应用程序启动窗口上剩下的确切执行时间.

我想这是一种CPU操作,我想知道它是否可能.

Q1:在Java中有可能吗?
Q2:如果在Java中不可能,那么有没有办法通过访问OS本机方法来实现这一点.例如,通过优先考虑Java应用程序或其他东西?
问题3:如何将应用程序的状态保存到文件并将其加载到内存中?

java execution-time

21
推荐指数
5
解决办法
3741
查看次数

mysql执行时间

有没有办法在mysql中获取最后执行的查询的执行时间?

mysql sql execution-time

19
推荐指数
3
解决办法
3万
查看次数

什么被认为是一个长的执行时间?

我试图弄清楚我的服务器端代码的效率.

使用microtime(true)测量速度,我能够计算我的脚本运行所花费的时间.

我得到的平均速度.3.5秒.这些脚本执行许多数据库查询以向用户返回不同的值.

什么被认为是将在网上运行的PHP脚本的有效执行时间?

我知道这完全取决于正在做什么,但只要将其视为从数据库读取并将值返回给用户的标准脚本.我看看谷歌,看到他们在.15几秒钟内搜索互联网,我觉得我的脚本是垃圾.

php performance execution-time

17
推荐指数
1
解决办法
7881
查看次数

致命错误:超过最长执行时间0秒

我的脚本比较了两个源树,创建了可能更改的文件的映射,比较了MD5哈希并创建了一个diff-package.

在28000-29000个文件之后,PHP终止了脚本并出现错误:

致命错误:第67行的/root/_PACKER-TESTER/core/diff.class.php超出了0秒的最大执行时间(标准的in_array()调用)

我已经尝试设置max_input_time为高值(或零) - 没有.

设置max_execution_time为99999999999999不执行任何操作....相同的错误.

php command-line-interface litespeed execution-time

17
推荐指数
2
解决办法
2万
查看次数

有没有一种有效的方法来计算golang的执行时间?

我正在寻找计算执行时间的最佳方法.

func main() {
    start := time.Now()

    time.Sleep(time.Second * 2)

    //something doing here

    elapsed := time.Since(start)
    fmt.Printf("page took %s", elapsed)
}
Run Code Online (Sandbox Code Playgroud)

上面的代码工作正常.

但是当我使用模板时,我必须为每个模板函数再次编写它.

有没有一种有效的方法来计算执行时间,包括模板?

go execution-time

15
推荐指数
3
解决办法
1万
查看次数