生活工程体验信仰哲学精神
快软网
精神世界
探索历史
哲学文学
艺术价值
信仰创造
境界审美
体验技术
技能工具
工程信息
医学生产
生活运用
操作能力

胡渊鸣:import一个“太极”库,让Python代码提速1

11月27日 游鱼坊投稿
  丰色发自凹非寺
  量子位公众号QbitAI
  众所周知,Python的简单和易读性是靠牺牲性能为代价的
  尤其是在计算密集的情况下,比如多重for循环。
  不过现在,大佬胡渊鸣说了:
  只需import一个叫做“Taichi”的库,就可以把代码速度提升100倍!
  不信?
  来看三个例子。
  计算素数的个数,速度x120
  第一个例子非常非常简单,求所有小于给定正整数N的素数。
  标准答案如下:
  我们将上面的代码保存,运行。
  当N为100万时,需要2。235s得到结果:
  现在,我们开始施魔法。
  不用更改任何函数体,import“taichi”库,然后再加两个装饰器:
  Bingo!同样的结果只要0。363s,快了将近6倍。
  如果N1000万,则只要0。8s;要知道,不加它可是55s,一下子又快了70倍!
  不止如此,我们还可以在ti。init()中加个参数变为ti。init(archti。gpu),让taich在GPU上进行计算。
  那么此时,计算所有小于1000万的素数就只耗时0。45s了,与原来的Python代码相比速度就提高了120倍!
  厉不厉害?
  什么?你觉得这个例子太简单了,说服力不够?我们再来看一个稍微复杂一点的。
  动态规划,速度x500
  动态规划不用多说,作为一种优化算法,通过动态存储中间计算结果来减少计算时间。
  我们以经典教材《算法导论》中的经典动态规划案例“最长公共子序列问题(LCS)”为例。
  比如对于序列a〔0,1,0,2,4,3,1,2,1〕和序列b〔4,0,1,4,5,3,1,2〕,它们的LCS就是:
  LCS(a,b)〔0,1,4,3,1,2〕。
  用动态规划的思路计算LCS,就是先求解序列a的前i个元素和序列b的前j个元素的最长公共子序列的长度,然后逐步增加i或j的值,重复过程,得到结果。
  我们用f〔i,j〕来指代这个子序列的长度,即LCS((prefix(a,i),prefix(b,j)。其中prefix(a,i)表示序列a的前i个元素,即a〔0〕,a〔1〕,,a〔i1〕,得到如下递归关系:
  完整代码如下:
  现在,我们用Taichi来加速:
  结果如下:
  胡渊鸣电脑上的程序最快做到了0。9秒内完成,而换成用NumPy来实现,则需要476秒,差异达到了超500倍!
  最后,我们再来一个不一样的例子。
  反应扩散方程,效果惊人
  自然界中,总有一些动物身上长着一些看起来无序但实则并非完全随机的花纹。
  图灵机的发明者艾伦图灵是第一个提出模型来描述这种现象的人。
  在该模型中,两种化学物质(U和V)来模拟图案的生成。这两者之间的关系类似于猎物和捕食者,它们自行移动并有交互:
  最初,U和V随机分布在一个域上;
  在每个时间步,它们逐渐扩散到邻近空间;
  当U和V相遇时,一部分U被V吞噬。因此,V的浓度增加;
  为了避免U被V根除,我们在每个时间步添加一定百分比(f)的U并删除一定百分比(k)的V。
  上面这个过程被概述为“反应扩散方程”:
  其中有四个关键参数:Du(U的扩散速度),Dv(V的扩散速度),f(feed的缩写,控制U的加入)和k(kill的缩写,控制V的去除)。
  如果Taichi中实现这个方程,首先创建网格来表示域,用vec2表示每个网格中U,V的浓度值。
  拉普拉斯算子数值的计算需要访问相邻网格。为了避免在同一循环中更新和读取数据,我们应该创建两个形状相同的网格WH2。
  每次从一个网格访问数据时,我们将更新的数据写入另一个网格,然后切换下一个网格。那么数据结构设计就是这样:
  一开始,我们将U在网格中的浓度设置为1,并将V放置在50个随机选择的位置:
  那么实际计算就可以用不到10行代码完成:
  ti。kerneldefcompute(phase:int):fori,jinti。ndrange(W,H):cenuv〔phase,i,j〕lapluv〔phase,i1,j〕uv〔phase,i,j1〕uv〔phase,i1,j〕uv〔phase,i,j1〕4。0cenduDulapl〔0〕cen〔0〕cen〔1〕cen〔1〕feed(1cen〔0〕)dvDvlapl〔1〕cen〔0〕cen〔1〕cen〔1〕(feedkill)cen〔1〕valcen0。5tm。vec2(du,dv)uv〔1phase,i,j〕val
  在这里,我们使用整数相位(0或1)来控制我们从哪个网格读取数据。
  最后一步就是根据V的浓度对结果进行染色,就可以得到这样一个效果惊人的图案:
  有趣的是,胡渊鸣介绍,即使V的初始浓度是随机设置的,但每次都可以得到相似的结果。
  而且和只能达到30fps左右的Numba实现比起来,Taichi实现由于可以选择GPU作为后端,轻松超过了300fps。
  pipinstall即可安装
  看完上面三个例子,你这下相信了吧?
  其实,Taichi就是一个嵌入在Python中的DSL(动态脚本语言),它通过自己的编译器将被ti。kernel装饰的函数编译到各种硬件上,包括CPU和GPU,然后进行高性能计算。
  有了它,你无需再羡慕CCUDA的性能。
  正如其名,Taichi就出自太极图形胡渊鸣的团队,现在你只需要用pipinstall就能安装这个库,并与其他Python库进行交互,包括NumPy、Matplotlib和PyTorch等等。
  当然,Taichi用起来和这些库以及其他加速方法有什么差别,胡渊鸣也给出了详细的优缺点对比,感兴趣的朋友可以戳下面的链接详细查看:
  https:docs。taichilang。orgblogacceleratepythoncode100x
  完
  量子位QbitAI头条号签约
  关注我们,第一时间获知前沿科技动态
投诉 评论 转载

预算10W,提车却变成20W,为何买车都会超预算?这三个坑你 喵哥先问问大家,你们有多少人,买车的时候,是没有超预算的。这两天,我有好几位朋友,买车咨询我,基本上都是这种情况。预算的时候,可能是10个W,最后加到20个W,为什……武汉星起航做亚马逊无货源模式遵守这些选品原则可增加销量热文聚 我们都知道跨境电商行业,“三分靠运营、七分靠选品”,选品对于卖家经营来说至关重要,产品的选择在一定程度上决定了卖家产品未来的销售情况。对于做亚马逊无货源模式的卖家来说,选品比运……都是骁龙888,荣耀X40GT还是RealmeGT?网友:真 荣耀X40GT发布后,8256GB的起步搭配,结合1999元的价格,就算是明知骁龙888的能效表现远不如天玑8100,有些网友依然表现出了较高的兴趣,其实如果真的想要入手骁龙8……大展视界科大讯飞智能办公本Max体验热博聚热点网 DoNews10月27日评测(丁凡)在专业办公领域,市面上的办公本产品功能一直没有一个规范,而科大讯飞的产品一直是行业旗帜性的存在,讯飞办公本产品不仅能满足日常的阅读需求,还增……OPPO凭实力成《这创新很中国》首发嘉宾,呈现强大创新力量热 科技的进步衍生出许多新产品和新生态,让我们的日常生活发生巨大变化。为了进一步展现中国的综合实力,同时也让更多人能够深入了解到现阶段的技术发展程度,人民日报抖音号便推出了大型直播……云南将新建一条高速,全长87。7公里,投资211。23亿,为 高速是利国利民的大事。有利于国家的经济繁荣发展,有利于百姓的出行。这也是很多地方都在建设高速的主要原因之一。目前,我国绝大部分都拥有高速,但不排除还有未通高速的县,同样,通了高……胡渊鸣:import一个“太极”库,让Python代码提速1 丰色发自凹非寺量子位公众号QbitAI众所周知,Python的简单和易读性是靠牺牲性能为代价的尤其是在计算密集的情况下,比如多重for循环。不过现在,大……41年前的《蛊》,港产邪派电影,录像厅时代的噩梦,删减才能播 香港影史上有不少cult片导演,代表人物当属以下三位:邱礼涛、桂治洪与牟敦芾。此三位导演留下的电影作品,可以说构成了无数观众的童年噩梦。相较而言,邱礼涛知名度……虞书欣赵露思都是圆脸编发模板,张元英“崔弟刘海”和编发搭更时 随着审美的多元化发展,贵圈圆脸的女明星可是越来越多了,前有赵丽颖,现在又多了赵露思、谭松韵、虞书欣感觉半个娱乐圈都要被圆脸给承包了。比起以往大众印象中,圆脸容易给人土气的……国内新能源车都卷成铺盖了,东风日产ARIYA艾睿雅能突破内卷 这几年随着咱们国内新能源汽车市场越蓬勃发展,还有传统车企直接放弃燃油车,全面转战新能源,并且取得了巨大成功。就连没有造车经验的新势力也在国内新能源市场混得风生水起,而反观传统燃……翡翠手镯,最具东方古典美热闻聚热点网 要说什么珠宝和旗袍最搭配,那一定是翡翠手镯。一抹通透的青绿色,将烟雨江南的朦胧意境缓缓道出。也曾看到网友说:“女人一生中最该收藏的两样东西,一是玉镯,一是旗袍。”一句话,不露声……哈弗销量大跌,长城汽车命悬一线热评聚热点网 作者李新来源新行情曾经中国SUV领导者的长城汽车,正游离在主流国产车企之外。两年前,一向高调的长城汽车,在其30周年时不但没有扯旗放炮庆祝,还发出了居安思危的……
【会员服务】微信里有个数字化商务助手助力资源破圈热议聚热点网 重庆面积最大的县,比两个深圳还大,有个令人向往的桃花源热文聚 重磅!AppleiPhone15新爆料:搭载3nm旗舰芯解决 《人民的名义》里的“酱油”卧底,原来是古装美男,你还记得吗? 休息权是人身权利吗?热传聚热点网 人到中年,男女之间的关系,往往从“睡后”就结束了热评聚热点网 【歌词】我喜欢你为什么你视而不见歌手:带泪的鱼热闻聚热点网 中秋烧塔,江西赣鄱大地上的别样存在!热传聚热点网 新倩女幽魂家园将要翻新?超多家具让人大饱眼福!热闻聚热点网 初三国旗下演讲稿热文聚热点网 拼多多启动“2022多多出海扶持计划”,为制造业出海提供一体 高品质荣耀X40发布:档位首款OLED硬核曲屏重新定义屏幕跃
吴亦凡如果有,我自己进监狱马尾巴雨水最润的节气,养阳祛湿护脾胃民办幼儿园劳动合同210岁孩子感统失调对照表新的保时捷同款科技下沉上汽大众全新1。5T发动机点满黑科技热闻聚 周年造句用周年造句大全小区坠楼事故哪种条件下保险不理赔非洲火山分布的原因在日常生活中,如何预防自己,变成黄脸婆呢?分娩时,如何才能缩短产程无痛苦,产后还能恢复快?

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找新乡渭南铜川松江山南雅安松原荃湾淮北昭通平凉鞍山赤峰苗栗保亭池州渝北株洲陇南濮阳三沙秀山密云鸡西