measure time program

本文介绍了一个使用C语言实现的简单延时函数,并通过对比实时钟获取前后的时间差来测量该延时函数的实际执行时间。文章提供了一段示例代码,展示了如何使用for循环来达到延时的效果,并利用timespec结构体来精确测量时间。
#include <time.h>

int delay(int time)
{
    int i,j;
    
    for(i =0;i<time;i++)
        for(j=0;j<10000;j++)
            ;
}

int main()
{
        struct timespec start_1, end_1;
        unsigned  long long diff;

        clock_gettime(CLOCK_REALTIME, &start_1);

        delay(10);    // UUT unit under test

        clock_gettime(CLOCK_REALTIME, &end_1);

        diff = 1000000000 * (end_1.tv_sec - start_1.tv_sec) + (end_1.tv_nsec - start_1.tv_nsec);
        printf("the difference is %lld nano seconds\n",diff);
        
        return 0;
}

reference : too much

转载于:https://www.cnblogs.com/youchihwang/p/10497959.html

oracle实现:取LOTNO max_measure_time之前的五个不同wwi.LOT_ID作为bsl_lot_id,并要取出bsl_lot_id对应的若干个bsl_wafer_id,如不足五条记录或完全重复数据,则取出不足五条数据即可。应该如何修改这段代码 SELECT measuretime.LOTNO–B004957 ,measuretime.PRODUCT_ID–0668A ,measuretime.PRODUCT_NO --123 ,measuretime.TRIM_STAGE ,measuretime.T_WAFER_ID–B004957-03 ,measuretime.LOT_ID–1708380 ,measuretime.WAFER_ID–6519598 6521374 ,measuretime.WAFER_NO–03 04 ,measuretime.TEST_PROGRAM–0668A_WATY ,measuretime.WAT_PARAMETER_ID --123 ,measuretime.PARAMETER_NAME --VTSAT_855PG_1_D020 ,measuretime.limit_file ,measuretime.max_MEASURE_TIME ,wwi.LOT_ID AS bsl_LOT_ID --1708380 ,wwi.WAFER_ID AS bsl_WAFER_ID–6519598 6521374 ,wwi.WAFER_NO AS bsl_WAFER_NO–03 04 ,wwi.MEASURE_TIME AS bsl_MEASURE_TIME ,ROW_NUMBER() OVER (PARTITION BY measuretime.LOTNO ORDER BY wwi.MEASURE_TIME desc) AS rn FROM ( SELECT wat.LOTNO --B004957 ,wat.PRODUCT_ID --0668A ,p.PRODUCT_ID AS PRODUCT_NO --123 ,wat.TRIM_STAGE --WF_START ,wat.T_WAFER_ID --B004957-03 ,wat.LOT_ID --1708380 ,wat.WAFER_ID --6519598 6521374 ,wat.WAFER_NO --03 04 ,wat.TEST_PROGRAM --0668A_WATY ,PARA.WAT_PARAMETER_ID --123 ,PARA.PARAMETER_NAME --VTSAT_855PG_1_D020 ,PARA.limit_file ,MAX(wat.MEASURE_TIME) AS max_MEASURE_TIME --2025-03-07 FROM wat LEFT JOIN para on wat.TRIM_STAGE = para.STAGE_true AND wat.TEST_PROGRAM = para.TEST_PROGRAM AND wat.PRODUCT_ID = para.PRODUCT_ID LEFT JOIN PRODUCT p ON para.PRODUCT_ID = p.NAME --0668A GROUP BY wat.LOTNO --B004957 ,wat.PRODUCT_ID --0668A ,p.PRODUCT_ID --123 ,wat.TRIM_STAGE --WF_START ,wat.T_WAFER_ID --B004957-03 ,wat.LOT_ID --1708380 ,wat.WAFER_ID --6519598 6521374 ,wat.WAFER_NO --03 04 ,wat.TEST_PROGRAM --0668A_WATY ,PARA.WAT_PARAMETER_ID --123 ,PARA.PARAMETER_NAME --VTSAT_855PG_1_D020 ,PARA.limit_file HAVING PARA.PARAMETER_NAME=‘SRAM0015’ ) measuretime LEFT JOIN WAT_WAFER_INFO wwi – --------确认关联条件 参数 ON measuretime.max_MEASURE_TIME > wwi.MEASURE_TIME AND measuretime.TEST_PROGRAM = WWI.TEST_PROGRAM WHERE wwi.TEST_PROGRAM NOT LIKE ‘%M1%’ AND wwi.TEST_PROGRAM NOT LIKE ‘%M4%’ ORDER BY wwi.MEASURE_TIME desc
03-14
oracle实现:取LOTNO max_measure_time之前的五个不同wwi.LOT_ID作为bsl_lot_id,应该如何修改这段代码 SELECT measuretime.LOTNO--B004957 ,measuretime.PRODUCT_ID--0668A ,measuretime.PRODUCT_NO --123 ,measuretime.TRIM_STAGE ,measuretime.T_WAFER_ID--B004957-03 ,measuretime.LOT_ID--1708380 ,measuretime.WAFER_ID--6519598 6521374 ,measuretime.WAFER_NO--03 04 ,measuretime.TEST_PROGRAM--0668A_WATY ,measuretime.WAT_PARAMETER_ID --123 ,measuretime.PARAMETER_NAME --VTSAT_855PG_1_D020 ,measuretime.limit_file ,measuretime.max_MEASURE_TIME ,wwi.LOT_ID AS bsl_LOT_ID --1708380 ,wwi.WAFER_ID AS bsl_WAFER_ID--6519598 6521374 ,wwi.WAFER_NO AS bsl_WAFER_NO--03 04 ,wwi.MEASURE_TIME AS bsl_MEASURE_TIME ,ROW_NUMBER() OVER (PARTITION BY measuretime.LOTNO ORDER BY wwi.MEASURE_TIME desc) AS rn FROM ( SELECT wat.LOTNO --B004957 ,wat.PRODUCT_ID --0668A ,p.PRODUCT_ID AS PRODUCT_NO --123 ,wat.TRIM_STAGE --WF_START ,wat.T_WAFER_ID --B004957-03 ,wat.LOT_ID --1708380 ,wat.WAFER_ID --6519598 6521374 ,wat.WAFER_NO --03 04 ,wat.TEST_PROGRAM --0668A_WATY ,PARA.WAT_PARAMETER_ID --123 ,PARA.PARAMETER_NAME --VTSAT_855PG_1_D020 ,PARA.limit_file ,MAX(wat.MEASURE_TIME) AS max_MEASURE_TIME --2025-03-07 FROM wat LEFT JOIN para on wat.TRIM_STAGE = para.STAGE_true AND wat.TEST_PROGRAM = para.TEST_PROGRAM AND wat.PRODUCT_ID = para.PRODUCT_ID LEFT JOIN PRODUCT p ON para.PRODUCT_ID = p.NAME --0668A GROUP BY wat.LOTNO --B004957 ,wat.PRODUCT_ID --0668A ,p.PRODUCT_ID --123 ,wat.TRIM_STAGE --WF_START ,wat.T_WAFER_ID --B004957-03 ,wat.LOT_ID --1708380 ,wat.WAFER_ID --6519598 6521374 ,wat.WAFER_NO --03 04 ,wat.TEST_PROGRAM --0668A_WATY ,PARA.WAT_PARAMETER_ID --123 ,PARA.PARAMETER_NAME --VTSAT_855PG_1_D020 ,PARA.limit_file HAVING PARA.PARAMETER_NAME='SRAM0015' ) measuretime LEFT JOIN WAT_WAFER_INFO wwi -- --------确认关联条件 参数 ON measuretime.max_MEASURE_TIME > wwi.MEASURE_TIME AND measuretime.TEST_PROGRAM = WWI.TEST_PROGRAM WHERE wwi.TEST_PROGRAM NOT LIKE '%M1%' AND wwi.TEST_PROGRAM NOT LIKE '%M4%' ORDER BY wwi.MEASURE_TIME desc
03-14
基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究(Matlab代码实现)内容概要:本文围绕“基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究”,介绍了利用Matlab代码实现配电网可靠性的仿真分析方法。重点采用序贯蒙特卡洛模拟法对配电网进行长时间段的状态抽样与统计,通过模拟系统元件的故障与修复过程,评估配电网的关键可靠性指标,如系统停电频率、停电持续时间、负荷点可靠性等。该方法能够有效处理复杂网络结构与设备时序特性,提升评估精度,适用于含分布式电源、电动汽车等新型负荷接入的现代配电网。文中提供了完整的Matlab实现代码与案例分析,便于复现和扩展应用。; 适合人群:具备电力系统基础知识和Matlab编程能力的高校研究生、科研人员及电力行业技术人员,尤其适合从事配电网规划、运行与可靠性分析相关工作的人员; 使用场景及目标:①掌握序贯蒙特卡洛模拟法在电力系统可靠性评估中的基本原理与实现流程;②学习如何通过Matlab构建配电网仿真模型并进行状态转移模拟;③应用于含新能源接入的复杂配电网可靠性定量评估与优化设计; 阅读建议:建议结合文中提供的Matlab代码逐段调试运行,理解状态抽样、故障判断、修复逻辑及指标统计的具体实现方式,同时可扩展至不同网络结构或加入更多不确定性因素进行深化研究。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值