多线程运行测试文件

news/2025/2/25 11:43:08

目录

  • 一、测试时间对比
    • 多线程
    • 单线程
  • 二、python多线程实现
  • 三、阻塞主线程确保所有子进程/线程执行完毕

跑测试的时候想提高效率,多个模型的跑。之前设计的就是for循环,等一个模型跑完另一个跑,不过时间上比较慢。想试试多线程的效果。其实多开几个终端也可以,不过就想用代码实现一下。

一、测试时间对比

多线程

在这里插入图片描述

单线程

在这里插入图片描述
多线程用了单线程38%的时间完成了任务

二、python多线程实现

thread=[]
for model_name in model_names:

    t = Thread(target=run_tests, args=(model_name, dataset_path, same_questions))
    thread.append(t)
    t.start()
    print(f"模型: {model_name} 已启动")
for t in thread:
    t.join()

这里创建了一个空列表thread,用于存储后续创建的线程对象。

三、阻塞主线程确保所有子进程/线程执行完毕

t.join() 用于等待线程 t 完成。join() 方法会阻塞主线程,直到线程 t 执行完毕。

通过遍历 thread 列表,代码确保所有线程都完成后,主线程才会继续执行。


http://www.niftyadmin.cn/n/5865451.html

相关文章

Qwen2.5-VL技术报告:多模态大模型的新SOTA!视觉理解能力全面超越GPT-4o

1.摘要 Qwen2.5-VL是Qwen视觉语言系列的最新旗舰产品,在基础功能和创新功能方面都有了显著的进步。Qwen2.5-VL通过增强的视觉识别、精确的对象定位、强大的文档解析和长视频理解,在理解和与世界交互方面实现了重大飞跃。因此,Qwen2.5-VL不仅…

RK3399 Android7 Ethernet Tether功能实现

在Android机顶盒产品,对于以太网与WiFi间的关系有如下: 1、以太网与WiFi STA均可连接路由器访问外网; 2、WiFi AP功能可以共享以太网访问外网。 而本文档是对于2的变动,实现通过以太网共享WiFi STA访问外网,并在此基础上可以共享4G/5G网络(设备支持情况下),下面是相应…

【蓝桥杯单片机】客观题

一、第十三届省赛(一) 二、第十三届省赛(二)

SSL和TLS:深入了解网络安全的基石

随着数据泄露和网络攻击事件的频繁发生,保护个人信息和敏感数据的需求愈发迫切。其中,SSL(安全套接层)和TLS(传输层安全协议)技术作为网络安全的重要组成部分,扮演了至关重要的角色。COCOSSL将通…

白帽黑客系列教程之Windows驱动开发(64位环境)入门教程(六)

为什么要写这篇文章呢? 作为一名白帽黑客,如果想要学习ROOTKIT攻防技术,就必须要有能力进行驱动开发! 本文章仅提供学习,切勿将其用于不法手段! 在Windows操作系统的64位环境中,进行ROOTKIT攻…

2025年信息科学与工程学院科协机器学习介绍——conda环境配置

机器学习——环境的安装 目录 机器学习——环境的安装安装pycharm安装miniconda安装需要的库Miniconda如何使用?镜像网站 下载需要的软件包和库这里着重介绍一下怎么下载pytorch 推荐一个python编辑器 ## 安装python python官网:Welcome to Python.org …

如何实现应用程序与中间件的类进行隔离

以下是一些可以实现类似阿里巴巴 Pandora 功能的框架和工具,这些项目可以帮助你实现类隔离以及中间件和应用的 JAR 包隔离: 1. Pandora Boot Pandora Boot 是阿里巴巴开源的一个基于 Pandora 的轻量级隔离容器,用于管理第三方包&#xff0c…

Rk3568驱动开发_驱动实现流程以及本质_3

1设备号: cat /proc/devices 编写驱动模块需要要想加载到内核并与设备正常通信,那就需要申请一个设备号,用cat /proc/devices可以查看已经被占用的设备号 设备号有什么用?不同设备其驱动实现不同用设备号去区分,例如字…