精华内容
下载资源
问答
  • 使用Matlab运行程序的时候,我们经常需要知道或比较不同程序的具体运行时间,其程序代码如下:st=cputime; % 程序开始运行时的cpu时间% 程序开始……% 程序结束et=cputime-st % 计算程序运行所用的时间经常我们需要...

    使用Matlab运行程序的时候,我们经常需要知道或比较不同程序的具体运行时间,其程序代码如下:

    st=cputime;        % 程序开始运行时的cpu时间

    % 程序开始

    ……

    % 程序结束

    et=cputime-st        % 计算程序运行所用的时间

    经常我们需要计算我们程序到底运行多长时间,这样可以比较程序的执行效率。当然这个对于只有几秒钟的小程序没有什么意义,但是对于大程序就有很重要的意义了。 下面我们就说说Matlab中计算程序运行时间的三种常用方法吧! 注意:三种方法由于使用原理不一样,得到结果可能有一定的差距! 1、tic和toc组合(使用最多的) 计算tic和toc之间那段程序之间的运行时间,它的经典格式为 tic 。。。。。。。。。。 toc 复制代码 换句话说程序,程序遇到tic时Matlab自动开始计时,运行到toc时自动计算此时与最近一次tic之间的时间。这个有点拗口,下面我们举个例子说明 % by dynamic of Matlab技术论坛 % see also http://www.matlabsky.com % contact me matlabsky@gmail.com % 2009-08-18 12:08:47 clc tic;%tic1 t1=clock; for i=1:3     tic ;%tic2     t2=clock;     pause(3*rand)     %计算到上一次遇到tic的时间,换句话说就是每次循环的时间     disp(['toc计算第',num2str(i),'次循环运行时间:',num2str(toc)]);     %计算每次循环的时间     disp(['etime计算第',num2str(i),'次循环运行时间:',num2str(etime(clock,t2))]);     %计算程序总共的运行时间     disp(['etime计算程序从开始到现在运行的时间:',num2str(etime(clock,t1))]);     disp('======================================') end %计算此时到tic2的时间,由于最后一次遇到tic是在for循环的i=3时,所以计算的是最后一次循环的时间 disp(['toc计算最后一次循环运行时间',num2str(toc)]) disp(['etime程序总运行时间:',num2str(etime(clock,t1))]); 复制代码 运行结果如下,大家可以自己分析下 toc计算第1次循环运行时间:2.5628 etime计算第1次循环运行时间:2.562 etime计算程序从开始到现在运行的时间:2.562 ====================================== toc计算第2次循环运行时间:2.8108 etime计算第2次循环运行时间:2.813 etime计算程序从开始到现在运行的时间:5.375 ====================================== toc计算第3次循环运行时间:2.0462 etime计算第3次循环运行时间:2.046 etime计算程序从开始到现在运行的时间:7.421 ====================================== toc计算最后一次循环运行时间2.0479 etime程序总运行时间:7.421 复制代码 2、etime(t1,t2)并和clock配合 来计算t1,t2之间的时间差,它是通过调用windows系统的时钟进行时间差计算得到运行时间的,应用的形式 t1=clock; 。。。。。。。。。。。 t2=clock; etime(t2,t1) 复制代码 至于例子我就不举了,因为在上面的例子中使用了etime函数了 3、cputime函数来完成 使用方法和etime相似,只是这个是使用cpu的主频计算的,和前面原理不同,使用格式如下 t0=cputime 。。。。。。。。。。。。。 t1=cputime-t0 复制代码 上面说到了三种方法,都是可以进行程序运行时间计算的,但是Matlab官方推荐使用tic/toc组合,When timing the duration of an event, use the tic and toc functions instead of clock or etime. 至于大家可以根据自己的喜好自己选择,但是使用tic/toc的时候一定要注意,toc计算的是与最后一次运行的tic之间的时间,不是第一个tic,更不是第二个。。。。。

    展开全文
  • MATLAB中测试程序运行时间的四种方法
  • matlab记录程序运行时间

    千次阅读 2018-09-14 17:45:06
    链接:https://blog.csdn.net/u013476464/article/details/40516023
    展开全文
  • Matlab中计算程序运行时间的三种方法

    千次阅读 多人点赞 2020-02-25 16:13:19
    下面我们就说说MATLAB中计算程序运行时间的三种常用方法吧! 注意:三种方法由于使用原理不一样,得到结果可能有一定的差距! 1、tic和toc组合(使用最多的) tic %代码块 toc %disp(['运行时间: ',num2str(toc)])...

    经常我们需要计算我们程序到底运行多长时间,这样可以比较程序的执行效率。当然这个对于只有几秒钟的小程序没有什么意义,但是对于大程序就有很重要的意义了。

    下面我们就说说MATLAB中计算程序运行时间的三种常用方法吧!

    注意:三种方法由于使用原理不一样,得到结果可能有一定的差距!

    1、tic和toc组合(使用最多的)

    tic
    %代码块
    toc
    %disp(['运行时间: ',num2str(toc)]);
    

    换句话说程序,程序遇到tic时Matlab自动开始计时,运行到toc时自动计算此时与最近一次tic之间的时间。这个有点拗口,下面我们举个例子说明:

    clc
    tic;%tic1
    t1=clock;
    for i=1:3
        tic ;%tic2
        t2=clock;
        pause(3*rand)
        %计算到上一次遇到tic的时间,换句话说就是每次循环的时间
        disp(['toc计算第',num2str(i),'次循环运行时间:',num2str(toc)]);
        %计算每次循环的时间
        disp(['etime计算第',num2str(i),'次循环运行时间:',num2str(etime(clock,t2))]);
        %计算程序总共的运行时间
        disp(['etime计算程序从开始到现在运行的时间:',num2str(etime(clock,t1))]);
        disp('======================================')
    end
    %计算此时到tic2的时间,由于最后一次遇到tic是在for循环的i=3时,所以计算的是最后一次循环的时间
    disp(['toc计算最后一次循环运行时间',num2str(toc)])
    disp(['etime程序总运行时间:',num2str(etime(clock,t1))]);
    

    运行结果如下,大家可以自己分析下

    toc计算第1次循环运行时间:2.5628
    etime计算第1次循环运行时间:2.562
    etime计算程序从开始到现在运行的时间:2.562
    ======================================
    toc计算第2次循环运行时间:2.8108
    etime计算第2次循环运行时间:2.813
    etime计算程序从开始到现在运行的时间:5.375
    ======================================
    toc计算第3次循环运行时间:2.0462
    etime计算第3次循环运行时间:2.046
    etime计算程序从开始到现在运行的时间:7.421
    ======================================
    toc计算最后一次循环运行时间2.0479
    etime程序总运行时间:7.421
    

    2、etime(t1,t2)并和clock配合

    来计算t1,t2之间的时间差,它是通过调用windows系统的时钟进行时间差计算得到运行时间的,应用的形式

    t1=clock;
    %代码块
    t2=clock;
    etime(t2,t1)
    

    3、cputime函数来完成

    使用方法和etime相似,只是这个是使用cpu的主频计算的,和前面原理不同,使用格式如下

    t0=cputime
    %代码块
    t1=cputime-t0
    

    以上三种方法,都是可以进行程序运行时间的计算,但是Matlab官方推荐使用tic,toc组合。但是使用tic/toc的时候一定要注意,toc计算的是与最后一次(即离它最近)运行的tic之间的时间。

    展开全文
  • matlab 定点运行,程序运行时间 由于事件的特殊性,需要在定点启动matlab程序。Windows系统中可建立特殊的文件实现,本文将在matlab中,随时读取系统时间实现该功能,对于精确到秒的可能不太适用。 要求:每天23点...

    matlab 定点运行,程序运行时间

    由于事件的特殊性,需要在定点启动matlab程序。Windows系统中可建立特殊的文件实现,本文将在matlab中,随时读取系统时间实现该功能,对于精确到秒的可能不太适用。

    要求:每天23点传输日前预测数据,00:00开始进行实时预测,且每五分钟运行一次。

    clear all;
    clc;
    flag=1; %% 为了让程序持续运行而设置的参数
    aa = 0:5:55; 
    aa = string(aa);%% 用于存分钟数,字符串类型
    aa(1)="00";
    aa(2)="05";
        new_day =1;  %% 标志当前运行到第几天
    while (flag==1)
    %% 标志着新的一天
        d_time = datestr(now); %% 获取系统现在的时间
        d_time = d_time(13:end-3); %% 系统现在的“时:分”
        %% 若程序在2300之前点击运行
        if d_time=="23:00"
            ahead();%% 子函数
            pause(60);%% 以免程序运行过快,而重复运行
        end
        %% 若程序在2300 之后点击运行,或者是第二天的运行
        if (d_time=="00:00")
            fp();%%子函数
            fs();%%子函数
            flag_newday=1; %% 为了保证一天的运行
            dian=1;%% 5min一个数据,一天共288个点
            pause(60); %% 以免程序运行太快而重复运行
            while (flag_newday==1)
                d_time_all = datestr(now);
                d_time = d_time_all(16:end-3);
                d_ahead_time= d_time_all(13:end-3); %% 获取当前的分钟
                if find(d_time == aa)
                    if d_ahead_time =="23:00"
                        ahead();
                    end
                    fp();
                    fs();
                    pause(60);
                    dian=dian+1;
                end
                if dian ==288
                    flag_newday=0;
                    new_day = new_day+1;
                end
              end
    %           flag=0;
        end
    end
    

    2、程序运行时间

    (1)计算程序运行时间,但无法输出到自己指定的变量

    tic;
    ..... %% 自己的程序
    toc;
    

    运行程序后,在输出端系统自己输出中间程序的运行时间
    (2) 将程序运行时间输出到自己指定的变量

    t = clock();
    ..... %% 自己的程序
     a =  etime(clock,t)
    

    a输出的即为程序运行的时间,为完成五分钟运行程序的设定,也可:

    while(1)
    	t = clock();
    	子程序;
     	a =  etime(clock,t)
     	pause(300-a);
    end
    

    记录一下,以免自己每次都要重新查找

    展开全文
  • 说明:tic和toc是用来记录matlab命令执行的时间 tic用来保存当前时间,而后使用toc来记录程序完成时间。 示例: tic %程序运行起点,计时开始 time=[]; for i=1:500 time(i)=i; end toc%程序运行终点,计时...
  • 你好有人抢答了啊,你的问题就是把上面代码放到一起了,把前半截放到一个m文件中,文件名取为dszsu后面一半在放到一个m文件中,或者直接放到command窗口就可以了,你的前半截相当于自己写了一个matlab的函数,跟平时...
  • matlab计算程序运行时间

    千次阅读 2019-05-06 11:41:39
    综述 评价程序运行时间是一项十分重要的工作。matlab中使用tic+toc可以完成。程序遇到tic开始计时,运行到toc时...若想将用运行时间记录下来,则这样使用toc tic %xxxx %ur code mytimer1=toc; disp(mytimer1) ...
  • matlab时间检测函数,比起自带的tic toc,运行时间更稳定
  • tic ....... toc
  • 摘要:本文详细的讨论了在windows平台中,测量程序运行时间的几个函数,GetTickCount, QueryPerformanceCounter和RDTSC,并给出示例代码。算法的好坏有好多评价指标,其中一个重要的指标是时间复杂度。如果两个程序...
  • 1、matlab程序运行时间: 测试代码运行时间,几种方法: (1)tic、toc,使用格式如下:(推荐使用) tic …… toc (2) clock + etime,使用格式如下: t1=clock; …… t2=clock; t=etime(t2,t1) (3) ...
  • Matlab运行时间过长

    2021-04-18 06:01:04
    我是个新手,不太了解matlab,从昨天开始,代码开始运行,已经运行了超过一天了,不知道是不是自己的代码有问题。%网咯连接间隔时间分布(无APs)function y=intctime(data)[mm,nn]=size(data);intcdata=zeros(mm,3);...
  • matlab 计算程序运行时间

    千次阅读 2016-04-11 17:37:01
    Matlab共提供了三种计算程序运行时间的方法。 1.Cputime: 返回matlab启动以来的cpu时间,可以在代码执行前保存当时的cpu时间,然后在程序代码执行结束后用cputime减去之前保存的数值,就可以获取程序实际运行的...
  • 在实时仿真过程中,需要实时获取到某段程序的运行时间,以便根据时间变化来调整对象的变化参数。...比如GPSR路由协议应用于车联网时,在模拟交通场景时需要实时根据程序运行时间和节点速度更改节点的位置信息。
  • Matlab计算运行时间

    2021-04-18 12:09:06
    long currentTimeMills()返回以毫秒为单位的当前时间 long nanoTime()返回最准确的可用系统计时器的当前值,以毫微秒为单位. 测试某些代码执行的时间长度: long ... long estimatedTime =(其一)MATLAB实际单位...
  • 计算运行时间的办法 Elapsed time is 0.757994 seconds. tic和toc是用来记录matlab命令执行的时间 tic用来保存当前时间,而后使用toc来记录程序完成时间。 两者往往结合使用,用法如下: tic operations toc 显示...
  • 这两个分析功能会将各模块所消耗的资源以及耗时都展现出来,用于资源或时序的优化,本篇将要记录的内容也与之有点相似,使用特定的功能或者语句对程序进行分析,然后得到各函数的耗时以及被调用次数等信息,最后再...
  • MATLAB查看代码运行时间调用次数

    千次阅读 2020-05-09 12:13:08
    MATLAB查看代码运行时间调用次数 命令行窗口输入:profile viewer 探查器不显示内容(2019a版本)
  • http://www.zdh1909.com/html/matlab/11180.html ...matlab中有tic和toc命令来记录一段程序的cpu使用时间,可以用help tic命令查看相应的说明。  先看第一段程序 clear all clc tic for a=0:1:10000
  • 如何读取数据程序进行优化? 1、预先为变量分配内存; (1)原始程序如下: 程序通过fgetl()逐行读取数据,并对数据进行处理,代码如下: profile on filename = 'nav_data20180129000742-3.5Hr.txt'; %单位...
  • 我们想运行时和真实时间同步时,有两种方法: Real-time synchronization 模块 有的电脑不支持real-time这个模块(好像是这个模块需要读取电脑的硬件时钟,有的电脑不让外部软件读取,造成这个模块失效) 2. ...
  •   实际工程运用中,常需要计算某段代码段的运行时间,用来评价算法的实时性,MATLAB中提供了clock函数可供计时。 2 代码   1、在代码前插入第一次时间t1 = clock;   2、在代码后插入第二次时间t2 = clock;  ...
  • end end 3、 %%遗传算法多目标模型主程序 clc clear dbstop if error load data params.dd=dd; % 距离矩阵 params.time_window=time_window;% 时间窗口 params.load=10;% 载荷 params.cityNumber=7; % 城市数量 ...
  • 注册x有时我们需要远端服务器上运行MATLAB(当然,也包括其它程序,这里将MATLAB作为一个例子)。但不希望被其它人无意之间关闭,包括shell终端窗口或MATLAB窗口本身(以linux操作系统为例,windows只需作小的改动——...
  • Matlab函数运行时间的三种计算方法

    千次阅读 2017-09-14 11:11:14
    Matlab函数运行时间的三种方法: 1、tic和toc组合 计算tic和toc之间那段程序之间的运行时间,它的经典格式为 : tic 函数 toc 复制函数代码,当代码遇到tic时Matlab自动开始计时,运行到toc时自动计算此时与...
  • 本帖最后由 安然娜124 于 2016-4-26 21:37 编辑疑惑:(1)该程序点击运行后一直处于忙的状态,好久都没反应,不知道是程序中for语句太多导致的,还是语句存在死循环?(2)如果程序可以运行,不管出没出结果,是不是都...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,146
精华内容 2,858
关键字:

matlab记录程序运行时间

matlab 订阅