当前位置:首页 > 实用技巧 >

线程计算太慢如何解决(逻辑处理器2个怎样变4个)

来源:原点资讯(www.yd166.com)时间:2023-04-30 12:52:46作者:YD166手机阅读>>

1 提升计算速度

遇上项目紧急情况,面对大量需要试算的数据时,如何快速提升计算效率,可能是最现实的问题。计算机操作系统提供了进程和线程模型,各种语言都有对这些模型的抽象,并且大多数系统都支持多进程和多线程任务处理。从这个角度,工程上是可以提升计算效率的。但是,什么样的任务适合多线程或多进程?如果适合,选用多线程,还是多进程?这些都是需要去决策的,如果选用不恰当,费了功夫,却没有太大提升。

当然,还有一些其他大数据处理方法,比如map-reduce框架下的spark就非常适合处理在线数据的,在此主要还是讨论如何选择多线程,多进程编程模型解决快速处理的任务。

这个话题,在前几天和小陈讨论过,且他还特意写了一篇相关推文,受此启发,我重新整理下,并结合一些项目经历。

2 调用第三方爬取数据接口

现如今,很多项目的最后上线实施可能都会或多或少地依赖第三方的接口服务,想着什么都靠自己完全不依赖与其他伙伴,真的是太难了! 再有,商场为了首先占领一块领域,时间的宝贵毋庸多言,如果什么都靠自己去实现去做,除非提前几年就能高瞻远瞩,否则一切都可能为时已晚,因此一旦发现了商机,就要尽快实施,利用一切资源,尽快实现做出产品或服务,先于他人一步迅速占领市场,才是取胜之道。

如果你的服务需要调用别人的接口,任务处理会有一定的延时阻塞,并且你的请求量至少是在千万级,面对这样的处理任务,用单进程或单线程都显得力不从心,处理会很缓慢,业务方没有耐心等你慢慢处理。

3 单机200个线程

调用别人的服务或接口,也是IO的一种,处理这种任务,一般适合用多线程。引用小陈的解释:

线程会时不时的因为IO请求被阻塞的情况下,使用多线程更好些。假设有四个线程(t1,t2,t3,t4)当t1先运行,运行一半需要处理一个IO请求,t1就由运行状态变为阻塞状态,t1的GIL锁被释放,此时此刻,假设(为什么是假设?因为当时t2,t3,t4都有可能获得GIL锁)t2获得GIL锁,t2由等待状态变为就绪状态,然后就开始运行,就这样不停的交替,形成了类似并发的情况,实际上这个就是一个伪并发,所以在IO密集型操作的程序(爬虫,文件读写,操作数据库……)中,适合用多线程模型。

同样,在处理2中提到的任务时,使用Python同一时刻确保最多200个线程调用爬取接口,快速实现数据处理任务。

4 计算密集型任务

大家或许已经知道多线程执行时,CPU的利用率并没有明显提高。上面已经提到,多线程实际上还是伪并行。

多进程可不可以充分利用闲置的CPU资源呢? 通过例子看一下:

线程计算太慢如何解决,逻辑处理器2个怎样变4个(1)

此时取任务管理器可以看到CPU的利用率迅速提升到100%:

线程计算太慢如何解决,逻辑处理器2个怎样变4个(2)

因此,在内存和寄存器中存在大量的需要抢占CPU资源的任务时,首选多进程模型处理。


私信回复下载更多学习资源:

all 查看所有已推送的原创文章

cs224 下载自然语言处理与深度学习斯坦福所有课程PPT

栏目热文

excel数据量大计算太慢(excel处理上万数据太慢)

excel数据量大计算太慢(excel处理上万数据太慢)

昨天已经针对Excel文件打开为什么很慢的原因做了详细的分析,从四个方面开始整理,一般情况下,经过以下四个步骤整理后,都...

2023-04-30 13:17:05查看全文 >>

excel表格卡顿严重(excel卡顿一招解决)

excel表格卡顿严重(excel卡顿一招解决)

今天跟大家来唠唠Excel表格为什么会突然变得很卡,这也是一个粉丝问到的问题,他的表格分明只有几行数据,但是却能把鼠标卡...

2023-04-30 13:11:40查看全文 >>

excel误删未保存怎么恢复(excel文件忘记保存了怎么恢复)

excel误删未保存怎么恢复(excel文件忘记保存了怎么恢复)

日常工作中你是否有遇到电脑突然断电、表格闪退等原因导致文件未保存就关闭了,想必此时的心情非常糟糕,那可是花费了半天时间整...

2023-04-30 12:39:30查看全文 >>

excel误删怎么恢复已经保存(Excel表格误删怎么恢复)

excel误删怎么恢复已经保存(Excel表格误删怎么恢复)

1. excel缓存文件怎么恢复提示磁盘已满就是字面的意思,存储盘已经没有空间了,检查一下你的EXCEL文件存储的位置是...

2023-04-30 12:55:05查看全文 >>

excel删除工作表怎么恢复(excel表格内删除了工作表怎么恢复)

excel删除工作表怎么恢复(excel表格内删除了工作表怎么恢复)

办公或学习中,我们经常会使用到表格来统计各种数据,有的时候,可能会不小心删除了这些重要的表格,如何恢复删除的表格?关于这...

2023-04-30 12:41:19查看全文 >>

excel中计算太慢(excel计算公式运行好慢怎么解决)

excel中计算太慢(excel计算公式运行好慢怎么解决)

Excel大家再熟悉不过,不光数据分析,其在各行各业都得以广泛运用。笔者在日常工作中,发现不少小伙伴对Excel的了解和...

2023-04-30 13:07:55查看全文 >>

excel显示计算20个线程怎么解决(excel正在计算8个线程就卡死了)

excel显示计算20个线程怎么解决(excel正在计算8个线程就卡死了)

今天我们来认识一个比较奇怪的问题。表格中输入公式得到了正确结果,但随着公式下拉填充,却突然发现公式的结果为0,无法再输出...

2023-04-30 12:36:54查看全文 >>

excel多线程计算要多久能完成(excel线程导致计算慢怎么处理)

excel多线程计算要多久能完成(excel线程导致计算慢怎么处理)

前言该文为结合实际情况作的方案设计,导出阈值以及单sheet页条数都可以根据实际情况调整。大佬可直接跳过新手教程,直接查...

2023-04-30 13:13:35查看全文 >>

excel4个线程计算很卡怎么解决(excel一直显示正在计算8个线程)

excel4个线程计算很卡怎么解决(excel一直显示正在计算8个线程)

作为一款电子表格办公软件,有的人拿它做表单、有的人拿它做数据分析、有的人拿它做项目管理,几乎说Excel渗透到需要处理数...

2023-04-30 13:13:49查看全文 >>

excel怎么强制停止计算线程(excel老是计算线程很慢)

excel怎么强制停止计算线程(excel老是计算线程很慢)

最近项目上一个学员给我一个Excel文件,他说他每天都需要更新这个表,但是随着时间推移和数据的增加,最近文件的打开速度非...

2023-04-30 12:42:37查看全文 >>

文档排行