日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Python團(tuán)隊(duì)官宣下線GIL:可選擇性關(guān)閉

鵝妹子嚶!拖累AI和ML運(yùn)算的GIL鎖終于關(guān)!閉!了!

創(chuàng)新互聯(lián)是一家專注于網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),從江網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:從江等地區(qū)。從江做網(wǎng)站價(jià)格咨詢:18982081108

Python官方宣布,在新版的CPython中,GIL鎖將成為「可選擇項(xiàng)」。

人們終于不必再受到這一限制的困擾了。

圖片

這則通告中提到的colesbury,多年來(lái)一直致力于讓Python官方把GIL移除。

現(xiàn)在這個(gè)夢(mèng)想終于實(shí)現(xiàn)了,不僅Python官方對(duì)他表示了感謝,網(wǎng)友也給他發(fā)去了賀電。

圖片

GIL的關(guān)閉,意味著此前只能串行的多個(gè)線程將可以并行運(yùn)行。

對(duì)于人工智能、機(jī)器學(xué)習(xí)等計(jì)算密集型領(lǐng)域,工作效率將大大提高。

聽(tīng)聞這一消息,已經(jīng)用了20年、快要把Python當(dāng)成母語(yǔ)的老用戶流下了激動(dòng)的淚水。

圖片

LeCun也發(fā)文表示慶祝:再也沒(méi)有GIL了!

圖片

再見(jiàn)了,GIL

根據(jù)官方通告顯示,GIL的下線工作將分為三個(gè)階段。

短期之內(nèi),出于兼容性等考量,「無(wú)GIL」將作為實(shí)驗(yàn)性功能供用戶選擇。

在這一階段(大約是3.13版本),Python團(tuán)隊(duì)也需要進(jìn)行摸索,可能無(wú)法提供社區(qū)支持。

同時(shí)官方也希望發(fā)行商在這一階段不要將no-GIL作為默認(rèn)屬性。

這一過(guò)程可能持續(xù)1-2年時(shí)間。

當(dāng)有足夠的社區(qū)支持能力后,GIL的退出將進(jìn)入中期階段。

這主要取決于修改后的API對(duì)舊版本的兼容程度。

這一階段當(dāng)中,分銷商將開(kāi)始提供no-GIL版本,但不同的包之間可能存在較大差異

而Python團(tuán)隊(duì)的長(zhǎng)期目標(biāo)是將no-GIL作為默認(rèn)選項(xiàng),甚至徹底抹去GIL的一切痕跡。

官方對(duì)此十分期待,但同時(shí)為了確保兼容性,也表示不能操之過(guò)急。

官方預(yù)計(jì),這一目標(biāo)可能要等到五年之后實(shí)現(xiàn)。

同時(shí)官方也表示,如果在此期間發(fā)現(xiàn)關(guān)閉GIL的風(fēng)險(xiǎn)遠(yuǎn)大于收益,會(huì)進(jìn)行回滾操作。

不過(guò),也有吃瓜群眾表示,GIL是個(gè)嘛玩意兒?

而且這條的瀏覽量在評(píng)論區(qū)還排上了第二名。

圖片

那就讓我們來(lái)看看,這把「鎖」,究竟「鎖」住了什么。

GIL「鎖」住了什么

GIL全名為全局解釋器鎖(Global Interpreter Lock)。這是一種線程管理機(jī)制,并不根屬于Python語(yǔ)言,而是存在于CPython中。

Cpython是由官方推出、用C語(yǔ)言實(shí)現(xiàn)的Python代碼解釋器。

換言之,只要用的Python是官方版本,都會(huì)受到GIL的影響。

在GIL鎖開(kāi)啟的情況下,同個(gè)進(jìn)程內(nèi)的多個(gè)線程只能串行而不能并行。

GIL的釋放有兩種觸發(fā)方式,一種是遇到I/O操作,另一種則是超出時(shí)間限制。

遇到I/O操作時(shí),原線程運(yùn)行結(jié)束,其余線程對(duì)CPU使用權(quán)進(jìn)行「競(jìng)爭(zhēng)」。

但如果是超時(shí)釋放,原來(lái)運(yùn)行的線程會(huì)重新加入這場(chǎng)「競(jìng)爭(zhēng)」。

這種做法是出于安全性考慮,但已經(jīng)不能適應(yīng)時(shí)代的發(fā)展。

根據(jù)GIL的原理,主要進(jìn)行I/O操作的程序,比如網(wǎng)頁(yè)爬蟲,受到的影響并不大。

而對(duì)于計(jì)算密集型的程序來(lái)說(shuō),就是另一回事了。

GIL誕生時(shí)的CPU還只有一個(gè)核心,但在發(fā)展的過(guò)程中,GIL始終保持著全局鎖定的特性。

這就導(dǎo)致了在多核CPU早已普及的今天,多出的核心并沒(méi)有被利用,大量算力被浪費(fèi)。

這意味著,對(duì)于AI、ML等計(jì)算密集領(lǐng)域,效率會(huì)出現(xiàn)嚴(yán)重降低。

AI發(fā)展如火如荼的現(xiàn)在,姍姍來(lái)遲的解決方案終于出爐。

不過(guò),就像這位網(wǎng)友所說(shuō)的,晚一些總比沒(méi)有好。

參考鏈接:
[1]https://discuss.python.org/t/a-steering-council-notice-about-pep-703-making-the-global-interpreter-lock-optional-in-cpython/30474
[2]https://twitter.com/soumithchintala/status/1685524194144989184
[3]https://en.wikipedia.org/wiki/Global_interpreter_lock
[4]https://wiki.python.org/moin/GlobalInterpreterLock


當(dāng)前文章:Python團(tuán)隊(duì)官宣下線GIL:可選擇性關(guān)閉
文章轉(zhuǎn)載:http://www.5511xx.com/article/dhpogco.html