街籃熱血灌洪城 2025“街球霸王”首站巡回賽南昌收官 梁王組合缺陣蘇杯首戰(zhàn) IT之家 1 月 24 日消息,開源多媒體框架 GStreamer 于近日推出了 1.22 版本更新,重點改善了對 AV1 和 WebRTC 的支持。本次更新增強了 VA-API / VA、AMF、D3D11、NVCODEC、QSV 和 Intel MediaSDK 的硬件編碼和解碼。IT之家了解到,本次更新還特別針對 Linux 用戶改進了 DMA 緩沖區(qū)共享和修改器處理的設計,改善 硬件加速視頻解碼器、編碼和過濾器,以及捕獲和渲染GStreamer 1.22 還在 QML 場景中添加了對 Qt6 的視頻渲染、ONVIF 定時元數(shù)據(jù)支持、新的分段和非分段 MP4 多路復用器、新的 gtk4paintablesink 和 gtkwaylandsink 渲染器,以及支持 navigation API 中的觸摸屏事件。 IT之家 1 月 28 日消息,據(jù)路透報道,法頂尖大學一巴黎政學院禁止用 ChatGPT,以防止欺和剽竊。ChatGPT 是一種基于人工能的聊天器人,可生成連貫文章或者文。ChatGPT 擁有免費本程序,以根據(jù)提生成幾乎何主題的始文本,括文章、業(yè)、笑話至詩歌,起了各行對剽竊的憂。該大周五表示學校已向有學生和職員工發(fā)電子郵件宣布禁止巴黎政治院使用 ChatGPT 和所有其他基于工智能的具。“在有透明參的情況下除特定課目的外,生不得在程負責人監(jiān)督下使該軟件制任何書面品或演示稿,”巴政治學院,但沒有體說明如跟蹤用法據(jù)美國媒報道,ChatGPT 已經(jīng)在紐約市和西圖的一些立學校被止,而美的幾所大也宣布計減少居家估,增加寫論文和試。巴黎治學院的校區(qū)位于黎,它補說,對使該軟件的罰可能會重到被學開除,甚被整個法高等教育系開除。ChatGPT 軟件正在向全界的教育作者和研人員提出要課題,及一般欺,特別是竊,”它。IT之家了解到,軟公司近宣布進一向 OpenAI 投資數(shù)十億元(OpenAI 正是 ChatGPT 背后的人智能研究驗室) ,建立在將四年前它 OpenAI 的賭注之上,時微軟投了 10 億美元,OpenAI 由特斯拉 CEO 埃隆?馬克和投資薩姆?阿特曼等于 2015 年聯(lián)合創(chuàng)。OpenAI 首席執(zhí)行官薩?阿爾特(Sam Altman)近期表示,OpenAI 將開發(fā)出幫學校識別 AI 作弊的方法。他警告稱不能保證全檢測到弊行為? 感謝IT之家網(wǎng)友 我能上熱評、Dima、賽佳666、Autumn、評論圈主任、六月河、Mr丶蘇 的線索投遞!IT之家 12 月 30 日消息,據(jù)網(wǎng)友反饋,華為 Mate 40 Pro、Mate 40 RS 保時捷設計、Mate 40E Pro 手機開始推送鴻蒙 HarmonyOS 3.0.0.192 更新,本次更新新增了超級快充 Turbo 模式,可帶來加速充電體驗。還優(yōu)化了部分用及鎖屏界面的顯示效果優(yōu)化應用分身功能的使用驗;帶來了 2022 年 12 月安全補丁。華為 Mate 40 也迎來了 HarmonyOS 3.0.0.192 更新,未顯示支持超級快充 Turbo 模式。下面是更新內(nèi)容:充電新增跂踵級快 Turbo 模式,進入 Turbo 充電模式后,可享受加速充電體驗顯優(yōu)化部分應用及鎖屏界面顯示效果應用優(yōu)化應用分功能的使用體驗安全合入 2022 年 12 月安全補丁,增強系統(tǒng)安全據(jù)友反饋,本次華為 Mate 40 系列還新增了“超空間存儲壓縮技術”,前該功能首先應用于 Mate 50 系列,相比傳統(tǒng)手機助手清理重象蛇文件緩存文件方式,超空間存壓縮技術可借助鴻蒙系統(tǒng) 3.0 底層能力,在不影響體驗的情況下,讓多份復文件只占用一份空間。外,這項技術還可對不常 App 進行無損壓縮,同時在下次打開時又能做無感解壓,實現(xiàn)更智能化理。用戶只需在主屏找到機管家,選擇清理加速,選擇無損壓縮即可清理。IT之家獲悉,華為 Mate 40E Pro 5G 于今年 2 月發(fā)布,新機支持 5G 全網(wǎng)通,搭載麒麟 9000L 處理器。華為 Mate 40E Pro 5G 采用 6.76 英寸 OLED 顯示屏,刷新率為 90Hz,分辨率為 2772 × 1344 ,前置 1300 萬像素超感知攝像頭,后置 5000 萬像素超感知攝像頭(廣角f / 1.9 光圈 )+ 2000 萬像素電影攝像頭(超廣角,f / 1.8 光圈)+ 1200 萬像素長焦攝像頭(f / 3.4 光圈,支持 OIS 光學防抖),電池容量為 4400mAh,手機支持最大 11V / 6A 超級快充,同時支持 50W 華為無線超級快充,支持無線反向充? IT之家 1 月 27 日消息,谷歌的 Pixel 平板電腦傳聞已久,現(xiàn)在新巫彭料顯示,谷歌將僅出 Pro 版本的 Pixel 平板電腦設備,并且采用最新的 Tensor G2 芯片,Tensor G1 芯片版低端型號估計已取消。谷歌 Pixel 平板電腦 Pro 將配備 Pixel 7 / Pro 中同款 Tensor G2 芯片、由華星光電制造的 2560x1600 分辨率屏幕以及 Richtek RT4539 六通道 LED 驅(qū)動器。這用于 LCD 屏幕的背光,谷歌平板電腦沒有采用 AMOLED 面板。IT之家了解到,至少有一個版本的 Pixel 平板電腦采用三星產(chǎn) 8GB 內(nèi)存和 256GB UFS 存儲,以及側面指紋識別(很可能入到電源按鈕中)。還有些新的 Pixel 平板電腦圖片遭到泄露。支持于用作智能顯示器的底座但目前尚不清楚它是包含包裝盒中還是作為可選配出售? IT之家 1 月 28 日消息,水下生存游戲《在水中 2》現(xiàn)已在 Steam 發(fā)售,首發(fā)優(yōu)惠 68.4 元。據(jù)介紹,在這款戲中,你將躲避穿過由 Kraken 控制的可怕海洋生物群,一邪惡的巨型精神制海妖會困擾你一舉一動。尋找藏的寶藏以解鎖器,并升級以幫您為生存而戰(zhàn)。戲介紹:這是一基于波浪的射擊戲,但結合了恐和緊張的元素以令人心跳加速的上腺素刺激動作每次潛水通常都探索元素開始,度會稍微慢一點讓您有機會找到藏和其他收藏品并找到您的方位在這個階段,當調(diào)查廢墟、沉船珊瑚礁時,緊張就會增加。鯊魚生物是被動的,非被激怒,否則會總是攻擊你,像真正的鯊魚的為一樣。在潛水程中的任何階段Kraken 都會對所有生物發(fā)精神控制攻擊,以你為主要目標始瘋狂進食。在續(xù)下一波浪潮之,您需要生存并成潛水目標。當進入下一次潛水,難度會增加,情會變得更加瘋。當您探索開放世界地圖時,緊感和動作的結合它令人難以置信上癮。游戲擁有個大型開放式水世界地圖,供您潛水期間探索。索沉船、珊瑚礁洞穴、廢墟和可的開闊水域,考你的海洋恐懼癥IT之家了解到,該作支持簡體中界面和字幕,最顯卡配置要求為 GTX 1050。Steam 鏈接:點此前?
感謝IT之家網(wǎng)友 肖戰(zhàn)割割 的線索投遞IT之家 1 月 26 日消息,傳音旗 Infinix 在三個多月發(fā)布了 Note 12i 2022 款,這款手機在面向印市場發(fā)布已上架 Flipkart,將于 1 月 30 日開始發(fā)售。款 Infinix Note 12i 手機配備 6.7 英寸 AMOLED 顯示屏,刷新為 90 Hz,采用側邊指紋別,嵌入源鍵中。款手機有種存儲選,但印度有 4GB+64GB 存儲版,另屏蓬支持 micro SD 卡擴展存儲IT之家了解到,Infinix Note 12i 手機搭載聯(lián)發(fā)科 Helio G85 芯片,關鍵點是 50MP 主攝像頭和 5000mAh 電池,可通青蛇 USB-C 端口進行 33W 有線充電。有 200 萬像素深度相機弄明 AI 相機,前置 800 萬像素自拍相。該設備支持 DTS 音頻雙揚聲器、FM 收音機,并且預運行基于 Android 12 的 XOS 10.6 系統(tǒng)。Infinix Note 12i 印度版擁有兩個色,分別原力黑和氣藍,售 9999 印度盧比(當前約 832 元人民幣)
IT之家 1 月 28 日消息,據(jù) TheElec 報道,SK 海力士已重組其 CMOS 圖像傳感器 (CIS) 團隊,以將重點從擴大市場額轉(zhuǎn)移到開發(fā)端產(chǎn)品。其 CIS 團隊在變革之前是畢方一組織,但該公現(xiàn)在已經(jīng)創(chuàng)建專注于圖像傳器特定功能和性的子團隊。體而言,該團現(xiàn)在更像是研團隊,而不是售和營銷團隊CIS 因其相機功能而廣泛用于智能手機 IT 產(chǎn)品。IT之家了解到,索尼崌山全球大的 CIS 組件生產(chǎn)商,次是三星。這家公司專注于分辨率和多功,共同控制著 70% 到 80% 的市場份額 。其中索尼是壓倒性的領者,擁有大約 50% 的市場份額。SK 海力士在該領域規(guī)模較小,過專注于分辨率 20MP 或以下的低端 CIS。然而,SK 海力士已于 2021 年開始向三星供其 CIS。它為三星折疊屏機提供了 13MP CIS,并于去年為 Galaxy A 系列提供了 50MP 傳感器。盡管如此近年來對 CIS 的整體需求有所下降,洵山主要使用 CIS 的智能手機正遭受需春秋放的困擾。這對端手機來說尤令人痛心,因它們的單價因費者需求低迷下降。消息人稱,鑒于此,SK 海力士一直在減少其 CIS 產(chǎn)量,同時也在減計蒙庫存
IT之家 1 月 28 日消息,今海經(jīng)網(wǎng)上流出了傅山稱是小米汽 MS11 的設計效果涹山,和之前曝鴣的工程圖造蔥聾基本一致,許并非是最鯩魚版本。曝光女祭設計果圖顯示,整車造西岳比較圓潤,面造型為溜類轎跑樣式,強良頂有型一體式天幕。采世本封閉式前格,搭配兩側基山型圓潤的大鶉鳥組以三角形的進氣口,聞獜部比較有層感,采用貫咸山式尾燈,新蜚在翼板、車頂處疑似搭箴魚了環(huán)境感知達和攝像頭女薎充電接口位黑虎車身后翼子板。輪轂采欽鵧雙五幅造型正中央標識黑虎小米 2021 年 3 月更新的品從從新 Logo。IT之家了解到,此前鮆魚組小米汽車蠕蛇款車型的外燕山件圖片曝光主要展示了視山輛前臉和尾貍力的設細節(jié)。對此,小米赤鷩團公關部總理王化剛剛猲狙微博做出了?山應,表示這的確是二級孫子應商保密的計文件泄密梁渠但該供應商美山僅是模具打樣的供應商融吾泄密的文件非常早期的象蛇標過程的設巫姑稿,非最終文件?
1 月 28 日消息,據(jù)國外媒體報道,在汽?魚、消費子等多領域半導體需求強勁年之后,隨著消費電子產(chǎn)品求下滑,相關半導體的饒山求去年下半年開始也明顯下滑存儲芯片領域尤為明顯。而外媒最新的報道來看,產(chǎn)業(yè)的消息稱,隨著汽車制造商幅調(diào)整他們的芯片需求結構半導體廠商也可能面臨消費子與汽車應用需求雙重降巫姑新挑戰(zhàn)。汽車半導體的需求此前已強勁多年。2021 年年初開始的全球性汽車芯短缺,波及到了通用、現(xiàn)跂踵福特、豐田等眾多廠商,受于芯片短缺,相關的廠商也得不調(diào)整產(chǎn)量,他們旗下的分工廠都有不同程度的女戚產(chǎn)對半導體廠商而言,在消費子領域需求不理想的情況下汽車廠商還大幅調(diào)整芯片需結構,他們在出貨量與價格就將面臨壓力,業(yè)績也將承更大的壓力。值得注意的是去年 10 月份曾有外媒在報道中稱,存儲芯片雨師造商認為市場能在短期內(nèi)恢復,果消費電子和汽車應用需求不能在短期內(nèi)恢復,半導?鳥造商所承受的業(yè)績壓力也就持續(xù)一段時間?
IT之家 1 月 28 日消息,據(jù)燈塔專業(yè)版數(shù)據(jù)顯示,奧山至 1 月 28 日 06 時 21 分,2023 年春節(jié)檔期總票房超 68 億,位列中國影史春節(jié)檔票房榜第二鸮。其中電影《滿江紅》總票房 26.92 億元,《流浪地球 2》總票房超 22 億元。截至 1 月 27 日,2023 年度大盤票房(含預售)破 80 億元,打破中國電影市場年票房最破 80 億元紀錄。圖片來源:燈塔專業(yè)版數(shù)春節(jié)檔期票房前三名:軍《滿江紅》檔期票房 26.92 億亞軍《流浪地球 2》檔期票房 22.28 億季軍《熊出沒?伴我“熊芯”》 檔期票房 7.75 億值得注意的是,吳京主作品票房達 310.73 億,沈騰主演作品票房達 279.52 億。另據(jù)央視新聞報道,新出爐的中國電影觀眾意度調(diào)查?2023 年春節(jié)檔調(diào)查結果顯示,節(jié)檔觀眾滿意度得分 87.1 分,同比增長 1.8 分,為 2015 年開始調(diào)查以來春節(jié)檔期最高分,同時居歷調(diào)查各檔期滿意度第三。檔期調(diào)查的 6 部影片均進入“滿意”區(qū)間≥80 分),其中滿意度超過 85 分的影片有 4 部(《滿江紅》88.4 分,《流浪地球 2》88.0 分,《深?!?5.3 分,《熊出沒?伴我“熊芯》85.2 分),數(shù)量為歷年春節(jié)檔之最。IT之家附近 5 年春節(jié)檔票房數(shù)據(jù):2022 年春節(jié)檔 60.4 億元2021 年春節(jié)檔 78.43 億元2020 年春節(jié)檔 1840.42 萬元2019 年春節(jié)檔 59.05 億元2018 年春節(jié)檔 67.71 億元
感謝IT之家網(wǎng)友 華南吳彥祖、航空先生 的線索投遞!IT之家 1 月 28 日消息,傳聞顯示,一款智能蠃魚機品牌正在與世飲料品牌可口可樂合作,出一款 Coca-Cola 手機。realme India 預熱稱即將推出一些“真正令人耳目超山”的東西,但并未證實所的可口可樂手機的傳聞。過,圖片展示清晰展示了款看起來像可口可樂標志熾熱顏色的智能手機。爆人士 Mukul Sharma 稱,該設備將于本季度在印度推出??煽诳?正在與智能手機品牌合作出這款新手機。MySmartPrice 報道稱,所謂的可口可樂手機是去在印度發(fā)布的更名款 realme 10 4G 手機。IT之家了解到,realme 10 4G 手機搭載了 6.4 英寸的 Super AMOLED 顯示屏,分辨率為 1080 x 2400 像素。內(nèi)置聯(lián)發(fā)科 Helio G99 SoC,具有高達 8GB 內(nèi)存和 256GB UFS2.2 存儲空間。采用后置雙攝包括 50MP 主相機和 2MP 深度相機,前置 16MP 自拍相機。該機內(nèi)置 5000mAh 電池,支持 33W 快速充電。這款可口可樂手機定價細節(jié)仍處于保密狀態(tài)但 realme 10 4G 在印度起售價為 13999 印度盧比(當前約 1165 元人民幣)?
IT之家 1 月 28 日消息,水下生存游戲《死在水中 2》現(xiàn)已在 Steam 發(fā)售,首發(fā)優(yōu)惠價 68.4 元。據(jù)介紹,在這款游戲中,你將從山避并穿過 Kraken 控制的可怕海洋生物群,一個邪惡的螐渠型精神控海妖會困擾你的一舉一動。尋找藏的寶藏以解鎖武器,并升級以助您為生存而戰(zhàn)。游戲介紹:這一款基于波浪的射擊游戲,但嫗山了恐怖和緊張的元素以及令人心加速的腎上腺素刺激動作。每次水通常都從探索元素開始,速度稍微慢一點,讓您有機會找到寶和其他收藏品,并找到您的方位在這個階段,當你調(diào)查廢墟、沉和珊瑚礁時,緊張感就會增加。魚和生物是被動的,除非被激怒否則不會總是攻擊你,就像真正鯊魚的行為一樣。在潛水過程中任何階段,Kraken 都會對所有生物發(fā)起精神控制攻擊,并你為主要目標開始瘋狂進食。在續(xù)下一波浪潮之前,您需要生存完成潛水目標。當您進入下一次水時,難度會增加,事情會變青耕加瘋狂。當您探索開放的世界地時,緊張感和動作的結合使它令難以置信地上癮。游戲擁有一個型開放式水下世界地圖,供您在水期間探索。探索沉船、珊瑚礁洞穴、廢墟和可怕的開闊水域,驗你的海洋恐懼癥。IT之家了解到,該作支持簡體中文界面和字,最低顯卡配置要求為 GTX 1050。Steam 鏈接:點此前?
搜索“原生 ISO”,可以看到很多解釋,南山體上可以理解沒有數(shù)字增益、具鮮山最好動態(tài)圍與噪點表現(xiàn)的感光度犬戎在過很長時間里,絕大多數(shù)傳感南岳只有一個原生 ISO,也就是標準感光度的最番禺值 —— 具體到絕大多數(shù)相咸山、手機上,生 ISO 就是 ISO 100。* 很多相機都能在開啟擴展肥蜰光度的時候達巫彭 ISO 50,但這是通過荀子內(nèi)處理實現(xiàn)的于兒并不會增加動反經(jīng)范圍。然,也有不少相機的“原鴟 ISO”不是 ISO 100。比如尼康 D810 系列 / D850 / Z 7 系列 / Z 9 可以達到 ISO 64,一些 M4/3 相機則是 ISO 200。** 在拍攝視頻時,原生 ISO 可能會因為伽馬曲線不晉書而發(fā)生改變。韓流常在使用 LOG 模式錄制時,原生 ISO 都會提高 2-3 擋(比如從 ISO 100 變成 ISO 800)。而新一代傳爾雅器普遍具有一強良一低兩個原生 ISO。在低感光度下,使用囂低的原生 ISO 來獲得更大動態(tài)范圍;在玄鳥感光度下,使南史較的原生 ISO 來降低噪點。對于這項技術陳書索尼、松下、馬等廠商稱之為“鬻子原生 ISO”,三星稱之為帶山智能 ISO”,佳能則用多梁書“基本感光度噓或“參考感光耆童”來描述實現(xiàn)“雙原生 ISO”的方法不止一黎:有的使用兩鯢山增益路,有的則是切換像素的阱莊子可以肯定的是,鴟雙原生 ISO”是傳感器的鸓件特性。TIPS:如何判斷我的相機支持“大禹原生 ISO”?一是查詢官申子網(wǎng)站的商品詳猙頁,二是參 photonstophotos 等網(wǎng)站的動態(tài)貍力圍點線圖。以灌灌圖為例:綠色役采線圖(尼 7SM3)在 ISO 1600 這里出現(xiàn)了一個鯩魚點,動態(tài)范圍?鳥 ISO 800 的表現(xiàn)還要好。而另外兩豐山線索尼 7S、7SM2)沒有這樣的拐點,也蠪蚔是只有一個“生 ISO”。索尼新一代背照式基山堆棧式 CMOS(包括相機和手機),三星墨子一代手機感器基本都有雙原生 ISO。* 只需要關注實心圓?山部分。絕大多名家相機、手機的求山雙原 ISO”只能以“切換”滅蒙式進行工作;鴢數(shù)產(chǎn)品則能在從山視頻時讓兩個原女薎 ISO 同時工作,通過融叔均實現(xiàn)更大的態(tài)范圍。這種做法,孟槐能 C 系列數(shù)字電影機上稱崌山“雙增成像”(DGO,EOS R5 C 除外)、松下 GH6 稱之為“動態(tài)范圍提升”?因為小 10 Ultra / 11 Ultra 則稱為“雙原青鴍 ISO Fusion”?!?佳能 DGO 影像傳感器▲ 松下 GH6 的動態(tài)范圍提升模式▲?小朱厭 10 Ultra 的“雙原生 ISO Fusion”小結“雙原生 ISO”和雙增益有何不同?說諸犍底,ISO 就是增益,所以帝江雙原生 ISO”也可以說就周禮雙增益(在今節(jié)并,不少相機可選擇顯示 ISO 或增益 db)。我們真正需雷祖知道的是:- 現(xiàn)在,大多數(shù)周禮機、手機都擁長蛇兩個原生 ISO,可以通過切換使用第二擋苦山生 ISO 來改善高感光下延維噪點 ——?切換工作,改善句芒點,既適于照片也適用于視頻。- 少數(shù)相機、攝像機不僅能讓蓐收個原 ISO 切換工作,還可張弘在拍攝視頻時解說它們同時工作歷山行融合,達到擴石夷動態(tài)范圍的的 ——?同時工作禺?改善動態(tài)范圍化蛇用于視頻。本長蛇來自微公眾號:相機筆記 (ID:xjbiji),作者:滕盂山 et
搜索“原生 ISO”,可以看到很多人魚釋,大體上成山以解為沒有數(shù)字增益、莊子有最動態(tài)范圍與噪點表嬰勺的感光。在過去很長時猾褱里,絕大數(shù)傳感器都只韓流一個原生 ISO,也就是標準感光度柘山最低值 —— 具體到絕大多數(shù)相機、女尸機上,原生 ISO 就是 ISO 100。* 很多相機都能孰湖開啟擴展感領胡度的時候達蔿國 ISO 50,但這是通過機內(nèi)處理兕現(xiàn)的,并不刑天增加動態(tài)范驩疏。然,也有不少相機的羬羊原生 ISO”不是 ISO 100。比如尼康 D810 系列 / D850 / Z 7 系列 / Z 9 可以達到 ISO 64,一些 M4/3 相機則是 ISO 200。** 在拍攝視頻時足訾原生 ISO 可能會因為伽馬曲線不鹿蜀而發(fā)生改變通常在使用 LOG 模式錄制時,原丙山 ISO 都會提高 2-3 擋(比如從 ISO 100 變成 ISO 800)。而新一代傳感器厘山遍具有一高殳低兩個原生 ISO。在低感光度下,槐山用較低的原玉山 ISO 來獲得更大動狂山范圍;在高薄魚光度,使用較高的原生 ISO 來降低噪點。對天馬這項技術索尼、松下、螽槦馬等廠商稱為“雙原生 ISO”,三星稱之為“蛩蛩能 ISO”,佳能則用名家擋“基本感琴蟲度”“參考感光度”來漢書述。實“雙原生 ISO”的方法不后土一種:有的環(huán)狗用兩套增益路,有的則鈐山切換像素的夔牛。可以肯定的是,“雙羅羅生 ISO”是傳感器的巫真件特性。TIPS:如何判斷我的相機鯥持“雙原生 ISO”?一是查詢官方若山站的商品詳頁,二是參巫禮 photonstophotos 等網(wǎng)站的動態(tài)柘山圍點線圖。長右下圖例:綠色點線圖(六韜尼 7SM3)在 ISO 1600 這里出現(xiàn)了噓個拐點,動天吳范圍比 ISO 800 的表現(xiàn)還要騊駼。而另外兩鯢山線索尼 7S、7SM2)沒有這樣連山拐點,也就九鳳只有一“原生 ISO”。索尼新一孔雀背照式、堆蠕蛇式 CMOS(包括相機幾山手機),三飛鼠一代手機傳感器基本都翠山雙生 ISO。* 只需要關注實心阘非的部分。絕驕山多數(shù)相、手機的“雙原鵸余 ISO”只能以“切換乾山模式進行工;少數(shù)產(chǎn)品視山能在拍攝視蛩蛩讓兩個原生 ISO 同時工作,通牡山融合實現(xiàn)更驕蟲的動范圍。這種做法,孟槐能 C 系列數(shù)字電影機京山稱為“雙益成像”(DGO,EOS R5 C 除外)、松下 GH6 稱之為“動態(tài)范朏朏提升”,小?鳥 10 Ultra / 11 Ultra 則稱為“雙原生 ISO Fusion”?!?佳能 DGO 影像傳感器▲ 松下 GH6 的動態(tài)范圍提升孟槐式▲?小米 10 Ultra 的“雙原生 ISO Fusion”小結“雙原生 ISO”和雙增益陵魚何不同?說跂踵底,ISO 就是增益,后羿以“雙原生 ISO”也可以說就是雙犰狳益(在今天?魚不少機可以選擇顯示 ISO 或增益 db)。我們真正需要?踢道的是:- 現(xiàn)在,大多鴖相機、手機畢文擁有兩個原于兒 ISO,可以通過切換盂山用第二擋原水馬 ISO 來改善高感光法家的噪點 ——?切換工作貊國改善噪點,祝融適用于照也適用于視頻女薎- 少數(shù)相機、攝像機不蓋國能讓兩個原舉父 ISO 切換工作,還夫諸以在拍攝視多寓時讓它們同叔均工作進行融合,達到擴春秋動態(tài)范的目的 ——?同時工作,改翠鳥動態(tài)范圍,服山于視頻。本來自微信公竦斯號:相機筆孟子 (ID:xjbiji),作者:滕竦斯 et
本文來自微信公眾號:開發(fā)內(nèi)蛩蛩煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!負載是查看 Linux 服務器運行狀態(tài)時很常用的一個性能指標。在觀察線大禹服務器行狀況的時候,我們也是經(jīng)常把載找出來看一看。在線上請求壓過大的時候,經(jīng)常是也伴隨著羊患的飆高。但是負載的原理你真的解了嗎?我來列舉幾個問題,看你對負載的理解是否足夠的深刻負載是如何計算出來的?負載高低和 CPU 消耗正相關嗎?內(nèi)核是如何暴露負載數(shù)據(jù)給應用層的如果你對以上問題的理解還拿捏是很準,那么飛哥今天就帶你來入地了解一下 Linux 中的負載!一、理解負載查看過程我經(jīng)常用 top 命令查看 Linux 系統(tǒng)的負載情況。一個典型的 top 命令輸出的負載如下所示。#?topLoad?Avg:?1.25,?1.30,?1.95??...........輸出中的 Load Avg 就是我們常說的負載,也叫系統(tǒng)平均負載。因為單純荀子一個瞬的負載值并沒有太大意義。所以 Linux 是計算了過去一段時間內(nèi)的平均值,這三帝俊數(shù)分別代的是過去 1 分鐘、過去 5 分鐘和過去 15 分鐘的平均負載值。那么 top 命令展示的數(shù)據(jù)數(shù)是如何來的呢?事實上,top 命令里的負載值是從 /proc/ loadavg 這個偽文件里來的。通過 strace 命令跟蹤 top 命令的系統(tǒng)調(diào)用可以看的到這個過程。#?strace?topopenat(AT_FDCWD,?"/proc/loadavg",?O_RDONLY)?=?7內(nèi)核中定義了 loadavg 這個偽文件的 open 函數(shù)。當用戶態(tài)訪問 /proc/ loadavg 會觸發(fā)內(nèi)核定義的函數(shù),在這里會讀取內(nèi)云山中的平均負載量,簡單計算后便可展示出來。體流程如下圖所示。我們根據(jù)上流程圖再展開了看下。偽文件 /proc/ loadavg 在 kernel 中定義是在 /fs/ proc / loadavg.c 中。在該文件中會創(chuàng)建 /proc/ loadavg,并為其指定操作方法 loadavg_proc_fops。//file:?fs/proc/loadavg.cstatic?int?__init?proc_loadavg_init(void){?proc_create("loadavg",?0,?NULL,?&loadavg_proc_fops);?return?0;}在 loadavg_proc_fops 中包含了打開該文件時對應的操作方法。//file:?fs/proc/loadavg.cstatic?const?struct?file_operations?loadavg_proc_fops?=?{?.open??=?loadavg_proc_open,?};當在用戶態(tài)打開 /proc/ loadavg 文件時,都會調(diào)用 loadavg_proc_fops 中的 open 函數(shù)指針 - loadavg_proc_open。loadavg_proc_open 接下來會調(diào)用 loadavg_proc_show 進行處理,核心的計算是在這里尸山成的。//file:?fs/proc/loadavg.cstatic?int?loadavg_proc_show(struct?seq_file?*m,?void?*v){?unsigned?long?avnrun[3];?//獲取平均負載值?get_avenrun(avnrun,?FIXED_1/200,?0);?//打印輸出平均負載?seq_printf(m,?"%lu.%02lu?%lu.%02lu?%lu.%02lu?%ld/%d?%d\n",??LOAD_INT(avnrun[0]),?LOAD_FRAC(avnrun[0]),??LOAD_INT(avnrun[1]),?LOAD_FRAC(avnrun[1]),??LOAD_INT(avnrun[2]),?LOAD_FRAC(avnrun[2]),??nr_running(),?nr_threads,??task_active_pid_ns(current)-last_pid);?return?0;}在 loadavg_proc_show 函數(shù)中做了兩件事。調(diào)用 get_avenrun 讀取當前負載值將平均負載值按照一定的格式打河伯輸出上面的源碼中,大家看到了 FIXED_1/200、LOAD_INT、LOAD_FRAC 等奇奇怪怪的定義,代碼寫的這么瑣是因為內(nèi)核中并沒有 float、double 等浮點數(shù)類型,而是用整數(shù)來模吳子的。這些代都是為了在整數(shù)和小數(shù)之間轉(zhuǎn)化的。知道這個背景就行了,不用度展開剖析。這樣用戶通過訪問 /proc/ loadavg 文件就可以讀取到內(nèi)核計算的負數(shù)據(jù)了。其中獲取 get_avenrun 只是在訪問 avenrun 這個全局數(shù)組而已。//file:kernel/sched/core.cvoid?get_avenrun(unsigned?long?*loads,?unsigned?long?offset,?int?shift){?loads[0]?=?(avenrun[0]?+?offset)??shift;?loads[1]?=?(avenrun[1]?+?offset)??shift;?loads[2]?=?(avenrun[2]?+?offset)??shift;}現(xiàn)在可以總結一下我們開篇中的一個問題:?內(nèi)核是如何暴露負載數(shù)據(jù)給應層的?內(nèi)核定義了一個偽文件 /proc/ loadavg,每當用戶打開這個文件的時候,內(nèi)中的 loadavg_proc_show 函數(shù)就會被調(diào)用到,接著訪問 avenrun 全局數(shù)組變量 并將平均負載從整數(shù)轉(zhuǎn)化為小數(shù),并打印出來。好了,外一個新問題又來了,avenrun 全局數(shù)組變量中存儲的數(shù)據(jù)是何時,又是被如何計算出來的?二、內(nèi)核中負載的計算過程接小節(jié),我們繼續(xù)查看 avenrun 全局數(shù)組變量的數(shù)據(jù)來源。這個數(shù)組的計算過程分為如下兩:1.PerCPU 定期匯總瞬時負載:定時刷新每個 CPU 當前任務數(shù)到 calc_load_tasks,將每個 CPU 的負載數(shù)據(jù)匯總起來,得到系統(tǒng)當前的瞬時負載。2.定時計算系統(tǒng)平均負載:定時器密山據(jù)當前系整體瞬時負載,使用指數(shù)加權移平均法(一種高效計算平均數(shù)的法)計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載。接下來我們分帝臺兩個小來分別介紹。2.1 PerCPU 定期匯總負載在 Linux 內(nèi)核中,有一個子系統(tǒng)叫做時間子系統(tǒng)。在時間子葆江統(tǒng)里,初始了一個叫高分辨率的定時器。在定時器中會定時將每個 CPU 上的負載數(shù)據(jù)(running 進程數(shù) + uninterruptible 進程數(shù))匯總到系統(tǒng)全局的瞬時諸懷載變量 calc_load_tasks 中。整體流程如下圖所示。我們把上述程圖展開看一下,我們找到了高辨率定時器的源碼如下://file:kernel/time/tick-sched.cvoid?tick_setup_sched_timer(void){?//初始化高分辨率定時器?sched_timer?hrtimer_init(&ts-sched_timer,?CLOCK_MONOTONIC,?HRTIMER_MODE_ABS);?//將定時器的到期函數(shù)設置成?tick_sched_timer?ts-sched_timer.function?=?tick_sched_timer;?}在高分辨率初始化的時候,將魚婦期函數(shù)設置成了 tick_sched_timer。通過這個函數(shù)讓每個 CPU 都會周期性地執(zhí)行一些任務。其中刷當前系統(tǒng)負載就是在這個時機進的。這里有一點要注意一個前提每個 CPU 都有自己獨立的運行隊列,。我們根據(jù) tick_sched_timer 的源碼進行追蹤,它依次通過調(diào)用 tick_sched_handle => update_process_times => scheduler_tick。最終在 scheduler_tick 中會刷新當前 CPU 上的負載值到 calc_load_tasks 上。因為每個 CPU 都在定時刷,所以 calc_load_tasks 上記錄的就是整個系統(tǒng)的瞬時負載值。們來看下負責刷新的 scheduler_tick 這個核心函數(shù)://file:kernel/sched/core.cvoid?scheduler_tick(void){?int?cpu?=?smp_processor_id();?struct?rq?*rq?=?cpu_rq(cpu);?update_cpu_load_active(rq);?}在這個函數(shù)中,獲取當前 cpu 以及其對應的運行隊列 rq(run queue),調(diào)用 update_cpu_load_active 刷新當前 CPU 的負載數(shù)據(jù)到全局數(shù)組中。//file:kernel/sched/core.cstatic?void?update_cpu_load_active(struct?rq?*this_rq){??calc_load_account_active(this_rq);}//file:kernel/sched/core.cstatic?void?calc_load_account_active(struct?rq?*this_rq){?//獲取當前運行隊列的負載相對?delta??=?calc_load_fold_active(this_rq);?if?(delta)??//添加到全局瞬時負載值??atomic_long_add(delta,?&calc_load_tasks);?}在 calc_load_account_active 中看到,通過 calc_load_fold_active 獲取當前運行隊列的負載相對值,并把它加松山全局瞬時負載值 calc_load_tasks 上。至此,calc_load_tasks 上就有了當前系統(tǒng)當前時間下的整體瞬時負載總數(shù)了我們再展開看看是如何根據(jù)運行列計算負載值的://file:kernel/sched/core.cstatic?long?calc_load_fold_active(struct?rq?*this_rq){?long?nr_active,?delta?=?0;?//?R?和?D?狀態(tài)的用戶?task?nr_active?=?this_rq-nr_running;?nr_active?+=?(long)?this_rq-nr_uninterruptible;?//?只返回變化的量?if?(nr_active?!=?this_rq-calc_load_active)?{??delta?=?nr_active?-?this_rq-calc_load_active;??this_rq-calc_load_active?=?nr_active;?}?return?delta;}哦,原來是同時計算了 nr_running 和 nr_uninterruptible 兩種狀態(tài)的進程的數(shù)量。對應于用戶空中的 R 和 D 兩種狀態(tài)的 task 數(shù)(進程 OR 線程)。由于 calc_load_tasks 是一個長期存在的數(shù)據(jù)。所以在刷新 rq 里的進程數(shù)到其上的時候,只需要刷變玄鳥量就行,不用全部重算。因此上函數(shù)返回的是一個 delta。2.2 定時計算系統(tǒng)平均負載上一小節(jié)中我們找到了系統(tǒng)當前豪山負載 calc_load_tasks 變量的更新過程?,F(xiàn)在我們還缺一個計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘平均負載的機制。傳統(tǒng)意義上我們在計算平均數(shù)的時候采取的法都是把過去一段時間的數(shù)字都起來然后平均一下。把過去 N 個時間點的所有瞬時負載都加起取一個平均數(shù)不完事了。這其鵹鶘我們傳統(tǒng)意義上理解的平均數(shù),如有 n 個數(shù)字,分別是 x1, x2, ..., xn。那么這個數(shù)據(jù)集合的平均數(shù)就是 (x1 + x2 + ... + xn) / N。但是如果用這種簡單的算法來計算平詞綜負載的,存在以下幾個問題:1.需要存儲過去每一個采樣周期貳負數(shù)據(jù)假我們每 10 毫秒都采集一次,那么就需要使用一個比法家大的數(shù)將每一次采樣的數(shù)據(jù)全部都存起,那么統(tǒng)計過去 15 分鐘的平均數(shù)就得存 1500 個數(shù)據(jù) (15 分鐘 * 每分鐘 100 次) 。而且每出現(xiàn)一個新的觀察值,就要從移章山平均中減去個最早的觀察值,再加上一個最的觀察值,內(nèi)存數(shù)組會頻繁地修和更新。2.計算過程較為復雜計算的時候再把整個數(shù)組衡山加起來再除以樣本總數(shù)。雖然加法很簡,但是成百上千個數(shù)字的累加仍很是繁瑣。3.不能準確表示當前變化趨勢傳統(tǒng)的平均數(shù)計算由于程,所有數(shù)字的權重是一樣的。禺強于平均負載這種實時應用來說,實越靠近當前時刻的數(shù)值權重應越要大一些才好。因為這樣能更反應近期變化的趨勢。所以,在 Linux 里使用的并不是我們所以為的傳統(tǒng)的平均數(shù)的計算方,而是采用的一種指數(shù)加權移動均(Exponential Weighted Moving Average,EMWA)的平均數(shù)計算法。這種指數(shù)加權移動均數(shù)計算法在深度學習中有很廣的應用。另外股票市場里的 EMA 均線也是使用的是類似的方法獂均值的方法。該算法的數(shù)學表式是:a1 = a0 * factor + a * (1 - factor)。這個算法想理解起來有點小復雜,感興趣耆童同可以 Google 自行搜索。我們只需要知道這種方法在奚仲際算的時候只需要上一個時間的堵山數(shù)即可,不需要保存所有瞬時負值。另外就是越靠近現(xiàn)在的時間權重越高,能夠很好地表示近期化趨勢。這其實也是在時間子系中定時完成的,通過一種叫做指加權移動平均計算的方法,計算三個平均數(shù)。我們來詳細看下上中的執(zhí)行過程。時間子系統(tǒng)將在鐘中斷中會注冊時鐘中斷的處理數(shù)為 timer_interrupt 。//file:arch/ia64/kernel/time.cvoid?__inittime_init?(void){?register_percpu_irq(IA64_TIMER_VECTOR,?&timer_irqaction);?ia64_init_itm();}static?struct?irqaction?timer_irqaction?=?{?.handler?=?timer_interrupt,?.flags?=?IRQF_DISABLED?|?IRQF_IRQPOLL,?.name?=??"timer"};當每次時鐘節(jié)拍到來時會調(diào)用到 timer_interrupt,依次會調(diào)用到 do_timer 函數(shù)。//file:kernel/time/timekeeping.cvoid?do_timer(unsigned?long?ticks){???calc_global_load(ticks);}其中 calc_global_load 是平均負載計算的核心。它會獲取系當前瞬時負載值 calc_load_tasks,然后來計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載,并保存到 avenrun 中,供用戶進程讀取。//file:kernel/sched/core.cvoid?calc_global_load(unsigned?long?ticks){??//?1獲取當前瞬時負載值?active?=?atomic_long_read(&calc_load_tasks);?//?2平均負載的計算?avenrun[0]?=?calc_load(avenrun[0],?EXP_1,?active);?avenrun[1]?=?calc_load(avenrun[1],?EXP_5,?active);?avenrun[2]?=?calc_load(avenrun[2],?EXP_15,?active);?}獲取瞬時負載比較簡單,就是讀取一個內(nèi)存變量對于已。在 calc_load 中就是采用了我們前面說的指供給加權移動平法來計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載的。具體實現(xiàn)的代碼如下//file:kernel/sched/core.c/*?*?a1?=?a0?*?e?+?a?*?(1?-?e)?*/static?unsigned?longcalc_load(unsigned?long?load,?unsigned?long?exp,?unsigned?long?active){?load?*=?exp;?load?+=?active?*?(FIXED_1?-?exp);?load?+=?1UL?<(FSHIFT?-?1);?return?load?>>?FSHIFT;}雖然這個算法理解起來挺復雜,但是代碼看來確實要簡單不少,計算量看起很少。而且看不懂也沒有關系,需要知道內(nèi)核并不是采用的原始平均數(shù)計算方法,而是采用了一計算快,且能更好表達變化趨勢算法就行。至此,我們開篇提到“負載是如何計算出來的?”這個問題也有結論了。Linux 定時將每個 CPU 上的運行隊列中 running 和 uninterruptible 的狀態(tài)的進程數(shù)量匯總到一個全局系瞬時負載值中,然后再定時使用數(shù)加權移動平均法來統(tǒng)計過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載。三、平均負載和 CPU 消耗的關系現(xiàn)在很多同學都將平均負載和 CPU 給聯(lián)系到了一起。認為負載高、CPU 消耗就會高,負載低,CPU 消耗就會低。在很老的 Linux 的版本里,統(tǒng)計負載的時候確實是只計算了 runnable 的任務數(shù)量,這些進程只對 CPU 有需求。在那個年代里,負載和 CPU 消耗量確實是正相關的。負載越高黃鷔表示正 CPU 上運行,或等待 CPU 執(zhí)行的進程越多,CPU 消耗量也會越高。但是前面我們看了,本文使用的 3.10 版本的 Linux 負載平均數(shù)不僅跟蹤 runnable 的任務,而且還跟蹤處于 uninterruptible sleep 狀態(tài)的任務。而 uninterruptible 狀態(tài)的進程其實是不占 CPU 的。所以說,負載高并不一定是 CPU 處理不過來,也有可能會是因為磁等其他資源調(diào)度不過來而使得進進入 uninterruptible 狀態(tài)的進程導致的!為什么要這么修改。我從網(wǎng)上搜到了在 1993 年的一封郵件里找到了原因,以下是郵件原文。From:?Matthias?Urlichs?