Linux基金會宣布將成立Open 3D基金會,以用來支援具備3D繪圖、渲染與開發等先進能力的開源專案,而首個專案就是衍生自Amazon Lumberyard遊戲引擎的Open 3D Engine
#看更多 https://www.ithome.com.tw/news/145503
同時也有21部Youtube影片,追蹤數超過8萬的網紅かじまっくチャンネル,也在其Youtube影片中提到,#PaperlikeHD #Dasung 提供 SKT株式会社:https://sktgroup.co.jp/ 紙のような見心地のセカンドモニター「Paperlike シリーズ」の新モデルです! 2019年2月15日販売開始されたばかりの新製品、新旧比較もしてみました(^^ゞ Paperlike...
「amazon linux 2」的推薦目錄:
- 關於amazon linux 2 在 iThome Facebook 的最佳解答
- 關於amazon linux 2 在 矽谷牛的耕田筆記 Facebook 的最佳解答
- 關於amazon linux 2 在 矽谷牛的耕田筆記 Facebook 的最讚貼文
- 關於amazon linux 2 在 かじまっくチャンネル Youtube 的最佳貼文
- 關於amazon linux 2 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的最讚貼文
- 關於amazon linux 2 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的最佳解答
amazon linux 2 在 矽谷牛的耕田筆記 Facebook 的最佳解答
本文延續前篇效能校正的經驗談,上篇文章探討了關於Locality與中斷中可以最佳化的部分,。本篇文章將繼續剩下最佳化步驟的探討。
The Case of the Nosy Neighbor
從前述最後的火焰圖中,作者觀察到幾個跟網路有關的 kernel call,譬如 dev_queue_xmit_nit 以及 __netif_receive_skb_core 等有可能有成長的空間,於是輾轉前往這邊去研究。
作者觀察到 packet_rev 這個函式有不少的比例,而該函式的意思是有人嘗試透過使用 AF_PACKET 等方式開啟了 RAW socket 來處理封包。透過 ss 這個指令,作者觀察到系統中有其他的應用程式透過 AF_PACKET/SOCKET_RAW 也在處理封包,最後輾轉發現原來是系統上的 dhclient。
DHCP Client 必須要在系統有 IP 以前就有收送封包的能力,所以使用 AF_PACKET 也滿合理的。作者思考是否有辦法可以讓 DHCP Client 拿到 IP 之後就關閉 AF_PACKET,改使用純 UDP 的方式來進行後續的 DHCP Renewal 功能,可惜這個方向沒有辦法達成。
根據 AWS 的官方文件,當一個 IP 被分配到一個機器後,這個 IP 會跟該機器同生死,因此這種情況下 其實不需要透過 DHCP Renewal 來反覆取得 IP,只要取得一次 IP 即可。
作者變修改相關腳本,當 DHCP 取得 IP 後關閉 dhclient,此外還必須要記得去修改網卡層級關於該 IP 的記憶,預設期間是一小時,作者將其修改為永遠。
透過這樣簡單的設定,整體的效能又再度提升了 6%,從 1.06M req/s 提升到 1.12M req/s
The Battle Against the Spin Lock
作者陳述自己花了非常多時間與 Spin Lock(作者心魔的大白鯨) 奮戰,幾乎是茶不思飯不想的滿腦都在思考如何加速,然後再經歷過反反覆覆的失敗後,作者最後決定還是要寫出一些關於 Spin Lock 的嘗試與研究心得,算是一個很精彩的踩雷心得。
這部分的篇幅很長,而且內容也滿深的,最後的解決方式也只有提升 2%左右的效能,所以對這部分有興趣的讀者再自行閱讀囉
This Goes to Twelve
終於來到最後的最佳化步驟了,這個步驟中的範疇都只能勉強壓榨出些許的效能,包含了關閉 GRO, TCP壅塞控制以及靜態中斷處理。
(Generic Receive Offload)GRO 是一個網路相關的功能,目的是用來將 Kernel 層級的封包給聚合起來變成一個大封包,而 Kernel 收到這個封包後會把該大封包重新組合變成本來的小封包,對於使用者的應用程式來說不會有任何感覺,但是對於整體的封包傳輸來說能夠節省花費的並提升效能。大部分情況下這個功能都是開啟的,Amazon Linux 2 預設也是打開這個選項。
然而針對作者的測試情境,由於所有的封包基本上都是同一條連線且資料量也不大,因此 GRO 雖然可以帶來聚合的效果,但是也會拖延封包進入到 Linux Kernel Network Stack 的時間點,因此開啟 GRO 帶來的好處沒有很大。
TCP 壅塞控制有不同的演算法,Amazon Linux2 內建兩種演算法 Cubic 以及 Reno,除此這兩個之外常見的還有 Google 多年前貢獻的 BBR。根據作者測試,其實驗環境中有比較好效能的則是 Reno
註: 不同算法針對不同應用場景,所以要切換演算法前要先釐清自己的應用情境以及用哪種演算法比較合適。
全部零零總總的修改後提升了 4%,整體的效能服務來到了 1.2M reqs/s
這篇文章真的很長,有些最佳化的方式是針對該應用場景而特別去使用的,這也意味者並非所有的修正方式都可以套用到各位的應用程式。
本篇文章還是很值得一讀,整個分析的思路與想法都非常有趣,雖然不一定用得到但是也許未來有一天會有機會使用。
https://talawah.io/blog/extreme-http-performance-tuning-one-point-two-million/
amazon linux 2 在 矽谷牛的耕田筆記 Facebook 的最讚貼文
本文延續前篇效能校正的經驗談,上篇文章探討了關於應用程式本身可以最佳化的部分,包含了應用程式以及框架兩個部分。本篇文章將繼續剩下最佳化步驟的探討。
Speculative Execution Mitigations
接下來探討這個最佳化步驟對於效能有顯著的提升,但是本身卻是一個非常具有爭議性的步驟,因為其涉及到整個系統的安全性問題。
如果大家對前幾年非常著名的安全性漏洞 Spectre/Meltdown 還有印象的話,本次這個最佳化要做的就是關閉這類型安全性漏洞的處理方法。
標題的名稱 Speculative Execution Migitations 主要跟這漏洞的執行概念與 Pipeline 有關,有興趣理解這兩種漏洞的可以自行研究。
作者提到,大部分情況下這類型的防護能力都應該打開,不應該關閉。不過作者認為開關與否應該是一個可以討論的空間,特別是如果已經確認某些特別情境下,關閉防護能力帶來的效能如果更好,其實也是一個可以考慮的方向。
舉例來說,假設今天你運行了基於 Linux 使用者權限控管與 namespaces 等機制來建立安全防護的多使用者系統,那這類型的防護能力就不能關閉,必須要打開來防護確保整體的 Security Boundary 是完整的。 但是如果今天透過 AWS EC2 運行一個單純的 API Server,假設整個機器不會運行任何不被信任的程式碼,同時使用 AWS Nitro Enclaves 來保護任何的機密資訊,那這種情況下是否有機會可以關閉這類型的檢查?
作者根據 AWS 對於安全性的一系列說明認為 AWS 本身針對記憶體的部分有很強烈的保護,包含使用者之間沒有辦法存取 Hyperviosr 或是彼此 instance 的 Memory。
總之針對這個議題,有很多的空間去討論是否要關閉,以下就單純針對關閉防護能力帶來的效能提升。
作者總共關閉針對四種攻擊相關的處理能力,分別是
Spectre V1 + SWAPGS
Spectre V2
Spectre V3/Meltdown
MDS/Zombieload, TSX Anynchronous Abort
與此同時也保留剩下四個,如 iTLB multihit, SRBDS 等
這種設定下,整體的運作效能再次提升了 28% 左右,從 347k req/s 提升到 446k req/s。
註: 任何安全性的問題都不要盲從亂遵循,都一定要評估判斷過
Syscall Auditing/Blocking
大部分的情況下,Linux/Docker 處理關於系統呼叫 Auditing/Blocking 兩方面所帶來的效能影響幾乎微乎其微,不過當系統每秒執行數百萬個系統呼叫時,這些額外的效能負擔則不能忽視,如果仔細觀看前述的火焰圖的話就會發線 audit/seccomp 等數量也不少。
Linux Kernel Audit 子系統提供了一個機制來收集與紀錄任何跟安全性有關的事件,譬如存取敏感的機密檔案或是呼叫系統呼叫。透過這些內容可以幫助使用者去除錯任何不被預期的行為。
Audit 子系統於 Amazon Linux2 的環境下預設是開啟,但是本身並沒有被設定會去紀錄系統呼叫的資訊。
即使 Audit 子系統沒有真的去紀錄系統呼叫的資訊,該子系統還是會對每次的系統呼叫產生一點點的額外處理,所以作者透過 auditctl -a never,task 這個方式來將整體關閉。
註: 根據 Redhat bugzilla issue #1117953, Fedora 預設是關閉這個行為的
Docker/Container 透過一連串 Linux Kernel 的機制來隔離與控管 Container 的執行權限,譬如 namespace, Linux capabilities., cgroups 以及 seccomp。
Seccomp 則是用來限制這些 Container 能夠執行的系統呼叫類型
大部分的容器化應用程式即使沒有開啟 Seccomp 都能夠順利的執行,執行 docker 的時候可以透過 --security-opt seccomp=unconfined 這些參數告訴系統運行 Container 的時候不要套用任何 seccomp 的 profile.
將這兩個機制關閉後,系統帶來的效能提升了 11%,從 446k req/s 提升到 495k req/s。
從火焰圖來看,關閉這兩個設定後,syscall_trace_enter 以及 syscall_slow_exit_work 這兩個系統呼叫也從火焰圖中消失,此外作者發現 Amazon Linux2 預設似乎沒有啟動 Apparmor 的防護,因為不論有沒有關閉效能都沒有特別影響。
Disabling iptables/netfilter
再來的最佳化則是跟網路有關,大名鼎鼎的 netfilter 子系統,其中非常著名的應用 iptables 可以提供如防火牆與 NAT 相關功能。根據前述的火焰圖可以觀察到,netfilter 的進入 function nf_hook_slow 佔據了大概 18% 的時間。
將 iptables 關閉相較於安全性來說比較沒有爭議,反而是功能面會不會有應用程式因為 iptables 關閉而不能使用。預設情況下 docker 會透過 iptables 來執行 SNAT與 DNAT(有-p的話)。
作者認為現在環境大部分都將 Firewall 的功能移到外部 Cloud 來處理,譬如 AWS Security Group 了,所以 Firewall 的需求已經減少,至於 SNAT/DNAT 這類型的處理可以讓容器與節點共享網路來處理,也就是運行的時候給予 “–network=host” 的模式來避免需要 SNAT/DNAT 的情境。
作者透過修改腳本讓開機不會去預設載入相關的 Kernel Module 來達到移除的效果,測試起來整體的效能提升了 22%,從 495k req/s 提升到 603k req/s
註: 這個議題需要想清楚是否真的不需要,否則可能很多應用都會壞掉
作者還特別測試了一下如果使用 iptables 的下一代框架 nftables 的效能,發現 nftables 的效能好非常多。載入 nftables 的kernel module 並且沒有規則的情況下,效能幾乎不被影響(iptables 則相反,沒有規則也是會影響速度)。作者認為採用 nftables 似乎是個更好的選擇,能夠有效能的提升同時也保有能力的處理。
不過 nftables 的支援相較於 iptables 來說還是比較差,不論是從 OS 本身的支援到相關第三方工具的支援都還沒有這麼完善。就作者目前的認知, Debian 10, Fedora 32 以及 RHEL 8 都已經轉換到使用 nftables 做為預設的處理機制,同時使用 iptables-nft 這一個中介層的轉換者,讓所有 user-space 的規則都會偷偷的轉換為底層的 nftables。
Ubuntu 似乎要到 20.04/20.10 的正式版本才有嘗試轉移到的動作,而 Amazon Linux 2 依然使用 iptables 來處理封包。
下篇文章會繼續從剩下的五個最佳化策略繼續介紹
https://talawah.io/blog/extreme-http-performance-tuning-one-point-two-million/
amazon linux 2 在 かじまっくチャンネル Youtube 的最佳貼文
#PaperlikeHD #Dasung
提供 SKT株式会社:https://sktgroup.co.jp/
紙のような見心地のセカンドモニター「Paperlike シリーズ」の新モデルです!
2019年2月15日販売開始されたばかりの新製品、新旧比較もしてみました(^^ゞ
Paperlike Pro Touch/Einkセカンドモニター / 13.3インチ / HDMI接続
https://amzn.to/2Iig3bV
Papelike HD(Paperlike 3) 13.3インチE Inkセカンドモニター
https://amzn.to/2Ik8wtj
今回使用したディスプレイポート変換ケーブル
BENFEI DisplayPort(ディスプレイポート) - HDMI 変換ケーブル オス・オス 【相性保証付き】
https://amzn.to/2DO8a8I
過去動画はこちら:https://youtu.be/LwWvabVzx0k
【この動画の情報はアップロード日時点のものです。情報の劣化や急遽内容変更、また、情報に誤りがある場合もございますのでご注意下さい】
Amazonプライム会員はこちら↓配送特典、プライム・ビデオ等 お得感満載!
https://www.amazon.co.jp/gp/prime/pipeline/landing/ref=as_li_ss_tl?ie=UTF8&ref=pd_prim_g_prim_prime_0086&linkCode=ll2&tag=kajimack-22&linkId=9898dcf14595f792fb783150f03d18e8
Amazon Mastercardクラシックに新規ご入会で6,000ポイントがもらえる!!!
https://www.amazon.co.jp/MasterCard%E6%96%B0%E8%A6%8F%E5%85%A5%E4%BC%9A%E3%82%AF%E3%83%AC%E3%82%B8%E3%83%83%E3%83%88%E3%82%AB%E3%83%BC%E3%83%89/b/ref=as_li_ss_tl?ie=UTF8&node=3497243051&linkCode=ll2&tag=kajimack-22&linkId=3a4996e2dded28552e99aaa4e42616ff&language=ja_JP
かじまっくのTwitter:https://twitter.com/kajimack_ch
かじまっくのInstagram:https://www.instagram.com/kajimack.ch/
かじまっくチャンネル中の人(ブログお休み中):https://kajimack.blogspot.jp/
使用音源:YouTubeオーディオライブラリ
※上記Amazonリンクはアソシエイトリンクを使用しています。
使用アプリ
LINE camera
https://itunes.apple.com/jp/app/aillis-jiuline-camera/id516561342?mt=8
iMovie(ios iPad)
https://itunes.apple.com/jp/app/imovie/id377298193?mt=8
iOSのためのGarageBand
https://www.apple.com/jp/ios/garageband/
iVOCALOID-VY1
https://itunes.apple.com/jp/app/ivocaloid-vy1/id396081265
モザイク ぼかし & モザイク加工アプリ
https://itunes.apple.com/jp/app/モザイク-ぼかし-モザイク加工アプリ/id964220645?mt=8
MovStash
https://itunes.apple.com/us/app/movstash/id1058281885?mt=8
amazon linux 2 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的最讚貼文
【PS3 覆面闘士再生リスト】►https://www.youtube.com/playlist?list=PLcKJ_Q1yK4Pjw4k51XKBgSj1zepKDiT6B
【チャンネル登録リンク/Subscribe Link】►https://www.youtube.com/channel/UChMiBeEtq70-rjUtANeASnQ?sub_confirmation=1
チャンネル登録、評価、コメント等して頂けると励みになります!/Please subscribe to my channel!
【動画内容】
初見
Sierra Morena-Caverna del Pollo
サイドクエスト(ガイコツの音楽隊-エラー)
制限(協力プレイ、コスチューム)
※2018/08/21放送の分割(2/3)アーカイブです。
【ゲーム概要】
タイトル:覆面闘士/マスクド・ウォリアーズ/Guacamelee!
ジャンル:横スクロールアクション
対応機種:PlayStation 3、PlayStation 4、PlayStation Vita、Xbox360、Xbox One、Wii U、Windows、OS X、Linux
開発元:Drinkbox Studios
発売元:スパイク・チュンソフト
Amazon関連商品ページ:http://amzn.to/2jx1Kil
【その他リンク】
▼YouTube実況プレイチャンネル
https://www.youtube.com/c/nobusiletsplay
▼Blog
http://nobusiblog.blog.fc2.com/
▼Twitter
https://twitter.com/NOBUSI_SHOGUN
amazon linux 2 在 野武士のゲームプレイ動画Ch. Nobusi Gameplay Ch Youtube 的最佳解答
【PS3 覆面闘士再生リスト】►https://www.youtube.com/playlist?list=PLcKJ_Q1yK4Pjw4k51XKBgSj1zepKDiT6B
【チャンネル登録リンク/Subscribe Link】►https://www.youtube.com/channel/UChMiBeEtq70-rjUtANeASnQ?sub_confirmation=1
チャンネル登録、評価、コメント等して頂けると励みになります!/Please subscribe to my channel!
【動画内容】
初見
Pueblucho-Forest del Chivo-Tule Tree
制限(協力プレイ、コスチューム)
※2018/08/19放送の分割(2/4)アーカイブです。
【ゲーム概要】
タイトル:覆面闘士/マスクド・ウォリアーズ/Guacamelee!
ジャンル:横スクロールアクション
対応機種:PlayStation 3、PlayStation 4、PlayStation Vita、Xbox360、Xbox One、Wii U、Windows、OS X、Linux
開発元:Drinkbox Studios
発売元:スパイク・チュンソフト
Amazon関連商品ページ:http://amzn.to/2jx1Kil
【その他リンク】
▼YouTube実況プレイチャンネル
https://www.youtube.com/c/nobusiletsplay
▼Blog
http://nobusiblog.blog.fc2.com/
▼Twitter
https://twitter.com/NOBUSI_SHOGUN