首页   注册   登录
 ipwx 最近的时间轴更新

ipwx

V2EX 第 86855 号会员,加入于 2014-12-15 23:19:35 +08:00
今日活跃度排名 4658
ipwx 最近回复了
14 小时 51 分钟前
回复了 vcfghtyjc 创建的主题 Python Python 的多线程原来不是真的多线程啊
所以总结一下,python 世界的 c 库比你想象的多,表现形式也比你想象的多。去看看 numba,基本原理是通过 jit 把 Python 代码编译成本机代码。
14 小时 52 分钟前
回复了 vcfghtyjc 创建的主题 Python Python 的多线程原来不是真的多线程啊
@vcfghtyjc 而且这种计算,多线程通讯一般都是 c 库内部处理的,干 python 啥事。上多机多卡,python io 和 c 库 io 就又没区别了
14 小时 54 分钟前
回复了 vcfghtyjc 创建的主题 Python Python 的多线程原来不是真的多线程啊
@vcfghtyjc 高计算场景纯 python 一开始就 out 了,根本连谈论多线程的资格都没有。带 c 库的(比如 numpy, pandas),或者上 cython/numba/pytorch/tensorflow 的,内部都会释放 gil。另外你 mp 库总得用个 c 库的吧,比如 mpi 之类的。一堆 c 库和 io 加持,多线程有啥问题?
15 小时 0 分钟前
回复了 vcfghtyjc 创建的主题 Python Python 的多线程原来不是真的多线程啊
@vcfghtyjc 这真的要看场景。比如我主线程运行 tensorflow session.run ,由于它内部会释放 gil,那我就可以在另一个标准 Python 线程里面,用 python 代码预读下一个 minibatch 的数据。你认为这是不是真的多线程并行?
15 小时 2 分钟前
回复了 vcfghtyjc 创建的主题 Python Python 的多线程原来不是真的多线程啊
@vcfghtyjc 因为你没有指定场景,我们假设是 web app。这种环境不需要 cross process message passing,mp 够了。其次,这种场景基本都是 io,所以其实连 python 多线程也能并发。
当然你可以补充说明一下你的应用场景。
15 小时 32 分钟前
回复了 vcfghtyjc 创建的主题 Python Python 的多线程原来不是真的多线程啊
@vcfghtyjc @tt67wq 为啥老在多线程帖子下看见这俩概念。。。别本本主义好不好。python 并发没问题,asyncio 和 multiprocessing 都可以实现并发。多线程只是并发的一种实现方法。同时,多线程也不一定就是为了并发,也许是为了加速计算。甚至也许只是为了写程序容易点,用 queue 做个特殊的编程模型简化实现。
15 小时 47 分钟前
回复了 vcfghtyjc 创建的主题 Python Python 的多线程原来不是真的多线程啊
是真线程,只不过有 gil 的情况下,除了调用 c 库(这比你想象的多)和 io 操作,只有一个线程能运行。
1 天前
回复了 icy20088 创建的主题 git 这种情况下如何同步代码
把他们的公钥加到你账号里面
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1094 人在线   最高记录 5043   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 14ms · UTC 18:38 · PVG 02:38 · LAX 10:38 · JFK 13:38
♥ Do have faith in what you're doing.