国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python新提案:使全局解釋器鎖成為可選項(xiàng)

OSC開源社區(qū) ? 來源:OSC開源社區(qū) ? 2023-01-13 15:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

去年的 2022 Python 語言峰會(huì)上,開發(fā)者 Sam Gross 帶來了新提案:刪除全局解釋器鎖 GIL,解放多線程性能。但由于 GIL 歷史悠久,許多官方 / 非官方的 Python 包和模塊都深度融合了 GIL 模塊,徹底移除 GIL 功能可能會(huì)對(duì)生態(tài)造成影響。在 2023 年 1 月 9 日, Sam Gross 又創(chuàng)建了另一個(gè) Python 提案 PEP 703:使全局解釋器鎖成為構(gòu)建 Python 的可選項(xiàng)。

f52bcf44-9299-11ed-bfe3-dac502259ad0.png

CPython 的全局解釋器鎖(“GIL”)防止多個(gè)線程同時(shí)執(zhí)行 Python 代碼,GIL 是 Python 有效使用多核 CPU 的障礙。

向 CPython 添加一個(gè)構(gòu)建配置 ( --without-gil) ,使其可在沒有全局解釋器鎖的情況下運(yùn)行 Python 代碼,并進(jìn)行必要的更改,以使解釋器線程安全。

這條 PEP 提案的內(nèi)容可謂是論文級(jí)別。提案中先闡述了 GIL 對(duì) Python 并發(fā)的性能阻礙,隨后詳細(xì)分析了抽離 GIL 需要對(duì) Python 內(nèi)部進(jìn)行哪些改動(dòng):

移除全局解釋器鎖需要對(duì) CPython 內(nèi)部進(jìn)行大量更改,但對(duì)公共 Python 和 C API 的更改相對(duì)較少。

實(shí)施的變更大約分為以下四類:

引用計(jì)數(shù)、內(nèi)存管理、容器線程安全、鎖和 atomic API

由于該提案內(nèi)容實(shí)在太多,感興趣的朋友請(qǐng)?jiān)?PEP 703 詳情頁(https://peps.python.org/pep-0703)和 Cpython 核心開發(fā)者對(duì)該提案的討論帖(https://discuss.python.org/t/pep-703-making-the-global-interpreter-lock-optional/22606/10)中細(xì)閱。

目前此 PEP 已經(jīng)有了參考實(shí)現(xiàn),它的原型源于當(dāng)初為了移除 GIL 而開發(fā)的 nogil 項(xiàng)目,該原型對(duì)單線程代碼帶來較明顯 (~10%) 性能提升。

如果該提案通過,意味著默認(rèn)情況下 CPython 不會(huì)刪除或關(guān)閉 GIL,也不會(huì)讓用戶有選擇地啟用 / 刪除 GIL。因?yàn)?-without-gil是一個(gè)編譯時(shí)標(biāo)志,可以在從源代碼構(gòu)建 Python 解釋器時(shí)進(jìn)行設(shè)置。但如果棄用該配置,會(huì)導(dǎo)致對(duì)解釋器的構(gòu)建和運(yùn)行方式的深度侵入性更改,PEP 中也對(duì)此進(jìn)行了詳細(xì)介紹。

對(duì)用戶側(cè)來說,該改動(dòng)意味著如果用戶使用任何帶有編譯擴(kuò)展的包,將需要獲取或構(gòu)建一個(gè)專門針對(duì) Python 解釋器的(不同的)ABI 編譯的版本,該版本在沒有 GIL 的情況下編譯。

關(guān)于 Python GIL

由于 CPython 的內(nèi)存管理非線程安全,因此設(shè)計(jì)了 CPython 的 GIL (Global Interpreter Lock - 全局解釋器鎖),以防止競(jìng)爭(zhēng)條件并確保線程安全。GIL 是一個(gè)互斥鎖,只允許一個(gè)線程持有 Python 解釋器的控制權(quán),從而保護(hù)對(duì) Python 對(duì)象的訪問,防止多個(gè)線程同時(shí)執(zhí)行 Python 字節(jié)碼。

但事后看來,GIL 并不理想,因?yàn)樗柚沽硕嗑€程的 CPython 程序充分利用多核處理器的性能。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • python
    +關(guān)注

    關(guān)注

    57

    文章

    4876

    瀏覽量

    90025
  • 解釋器
    +關(guān)注

    關(guān)注

    0

    文章

    103

    瀏覽量

    6991

原文標(biāo)題:Python新提案:使全局解釋器鎖成為可選項(xiàng)

文章出處:【微信號(hào):OSC開源社區(qū),微信公眾號(hào):OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    JTAG各類接口針腳定義、含義及SWD接線方式

    ) ----可選項(xiàng)2可選項(xiàng),由目標(biāo)端反饋給仿真的時(shí)鐘信號(hào),用來同步TCK信號(hào)的產(chǎn)生,不使用時(shí)直接接地。 System Reset ( nSRST)----可選項(xiàng)3
    發(fā)表于 01-22 06:11

    ODX診斷數(shù)據(jù)的質(zhì)量基石ODX Checker Rules詳解

    文件;SOVD架構(gòu)下的車輛,會(huì)用到符合SOVD標(biāo)準(zhǔn)的JSON文件;ODX(Open Diagnostic data eXchange)則是在診斷儀參數(shù)化、生產(chǎn)及售后過程中的關(guān)鍵診斷數(shù)據(jù)載體。無論是新勢(shì)力車企還是傳統(tǒng)整車廠,ODX文件的使用已從“可選項(xiàng)”逐漸成為“必
    的頭像 發(fā)表于 01-08 11:28 ?411次閱讀

    中的時(shí)間借用概念與靜態(tài)時(shí)序分析

    對(duì)于基于的設(shè)計(jì),靜態(tài)時(shí)序分析會(huì)應(yīng)用一個(gè)稱為時(shí)間借用的概念。本篇博文解釋了時(shí)間借用的概念,若您的設(shè)計(jì)中包含且時(shí)序報(bào)告中存在時(shí)間借用
    的頭像 發(fā)表于 12-31 15:25 ?5483次閱讀
    <b class='flag-5'>鎖</b>存<b class='flag-5'>器</b>中的時(shí)間借用概念與靜態(tài)時(shí)序分析

    求助,關(guān)于全局中斷使能的問題求解

    各位朋友大家好,我最近在使用蜂鳥的板子進(jìn)行開發(fā)時(shí),遇到了這樣的問題:我的程序每次運(yùn)行到使全局中斷的時(shí)候,就像進(jìn)入了死循環(huán)一樣,出不去了,如上圖,首先先打印“GI_EN begin!”這里是可以
    發(fā)表于 11-07 06:37

    請(qǐng)問這個(gè)芯片是被了嗎?

    我使用gd32f303ze芯片,但是燒錄不上,使用jlink查看了下地址,按照手冊(cè)里的FMC可選項(xiàng)字節(jié)里查看地址的情況,好像確實(shí)是了,但是按里面的流程走完還是沒解決問題,有人知道怎么回事嗎?
    發(fā)表于 11-03 22:09

    ABB變頻ACS510系列為什么要添加EMC濾波

    ACS510系列這種專為風(fēng)機(jī)、水泵等平方轉(zhuǎn)矩負(fù)載設(shè)計(jì)的經(jīng)濟(jì)型變頻上,添加EMC濾波并非可選項(xiàng),而是確保系統(tǒng)穩(wěn)定、合規(guī)運(yùn)行的必需措施。今天,我就從工程實(shí)踐角度,詳細(xì)科
    的頭像 發(fā)表于 11-02 18:40 ?648次閱讀
    ABB變頻<b class='flag-5'>器</b>ACS510系列為什么要添加EMC濾波<b class='flag-5'>器</b>

    shell基本介紹及常用命令之shell基本介紹

    的shell命令Linux命令一般由三部分組成:Command [option] [parameter]。說明:1.[]部分中的內(nèi)容是可選項(xiàng);2.命令,選項(xiàng),參數(shù)都以空格分隔;輸入命令完畢后,按
    發(fā)表于 09-28 09:05

    施耐德電氣如何助力生命科學(xué)與電子行業(yè)發(fā)展

    低碳轉(zhuǎn)型的大勢(shì)所趨下,先進(jìn)制造業(yè)對(duì)于能源與運(yùn)營(yíng)效率的內(nèi)生需求逐漸上升為行業(yè)發(fā)展的核心命題;與此同時(shí),出海全球市場(chǎng)的戰(zhàn)略方向也為企業(yè)帶來了突破增長(zhǎng)邊界的全新可選項(xiàng)
    的頭像 發(fā)表于 09-25 16:12 ?545次閱讀

    ?SN74HCS373 Octal透明技術(shù)解析與應(yīng)用指南

    Texas Instruments SN74HCS373/SN74HCS373-Q1八路透明D類包含八個(gè)D類。所有輸入均包括施密特觸發(fā)
    的頭像 發(fā)表于 09-24 10:40 ?822次閱讀
    ?SN74HCS373 Octal透明<b class='flag-5'>鎖</b>存<b class='flag-5'>器</b>技術(shù)解析與應(yīng)用指南

    SMA連接類型:低損耗款性能優(yōu)勢(shì)全解析

    對(duì)需要高精度、高頻段、遠(yuǎn)距離傳輸?shù)膱?chǎng)景來說,SMA 低損耗款不是 “可選項(xiàng)”,而是 “必選項(xiàng)”—— 普通款的損耗看似不大,但疊加后會(huì)嚴(yán)重影響系統(tǒng)性能,而低損耗款通過材質(zhì)、結(jié)構(gòu)、工藝的優(yōu)化,能最大限度 “守住” 信號(hào)能量,提升系統(tǒng)效率、降低成本。
    的頭像 發(fā)表于 09-19 10:10 ?1966次閱讀
    SMA連接<b class='flag-5'>器</b>類型:低損耗款性能優(yōu)勢(shì)全解析

    機(jī)房服務(wù)需要配ups電源嗎?要配什么樣的ups電源好?

    當(dāng)然需要!而且非常重要。可以這么說:UPS電源不是服務(wù)的“可選項(xiàng)”,而是保障業(yè)務(wù)連續(xù)性的“必選項(xiàng)”。給您一個(gè)簡(jiǎn)單直接的比喻:UPS就是服務(wù)群的“備用心臟”和“電壓穩(wěn)定
    的頭像 發(fā)表于 09-19 10:09 ?1282次閱讀
    機(jī)房服務(wù)<b class='flag-5'>器</b>需要配ups電源嗎?要配什么樣的ups電源好?

    政策風(fēng)口已至!不懂綠電直連,何以打造“真”零碳園區(qū)?

    國(guó)家層面把“綠電直連”寫入園區(qū)建設(shè)任務(wù)書,為何不是傳統(tǒng)并網(wǎng)?為何必須“直連”?本文從政策脈絡(luò)、經(jīng)濟(jì)賬本、能源安全、碳減助力四維度拆解,揭示綠電直連從“可選項(xiàng)”躍升為“必選項(xiàng)”的內(nèi)在必然。
    的頭像 發(fā)表于 09-18 14:44 ?735次閱讀
    政策風(fēng)口已至!不懂綠電直連,何以打造“真”零碳園區(qū)?

    2025燈具照明行業(yè)轉(zhuǎn)型:AI+MES實(shí)現(xiàn)智能化升級(jí)

    對(duì)于燈具照明行業(yè)而言,AI智能化MES已不再是可選項(xiàng),而是邁向高質(zhì)量發(fā)展、構(gòu)建核心競(jìng)爭(zhēng)力的必由之路;不要追求一步到位,可以從質(zhì)量追溯、生產(chǎn)無紙化等核心模塊開始,逐步擴(kuò)展到排程、預(yù)測(cè)性維護(hù)等高級(jí)AI應(yīng)用。
    的頭像 發(fā)表于 09-17 14:11 ?481次閱讀

    termux如何搭建python游戲

    模擬,支持通過APT包管理安裝軟件。搭建Python游戲開發(fā)環(huán)境前需完成以下基礎(chǔ)配置: 1. 更換國(guó)內(nèi)源 為提升下載速度,需替換Termux默認(rèn)源為清華源,執(zhí)行以下命令: ```bash
    發(fā)表于 08-29 07:06

    為什么在MCAL版本SW32K3_S32M27x_RTD_R21-11_5.0.0中,SPI的StartNotification是不可選項(xiàng)

    為什么在MCAL版本SW32K3_S32M27x_RTD_R21-11_5.0.0中,SPI的StartNotification是不可選項(xiàng)
    發(fā)表于 03-28 06:17