超算TOP500中的Linux占比——Operating System&Operating System Family

来源:https://www.cnblogs.com/hangxian/archive/2022/09/19/16706014.html
-Advertisement-
Play Games

2022-09-18-21:28:59 老師作業說明: TOP500中國超算占比,LINUX系統占比 說明:當時使用的是bing搜索,中國超算占比其實澎湃新聞什麼的都有介紹,但是我對它的數據來源持懷疑態度,索性自己去官網上看資料,後面解決Linux系統占比問題時,也是直接想著在官網解決,其實後面和同 ...


2022-09-18-21:28:59

老師作業說明: TOP500中國超算占比,LINUX系統占比

說明:當時使用的是bing搜索,中國超算占比其實澎湃新聞什麼的都有介紹,但是我對它的數據來源持懷疑態度,索性自己去官網上看資料,後面解決Linux系統占比問題時,也是直接想著在官網解決,其實後面和同學說起,他說直接百度就行了。嗯,確實,但是當時思維受限了,不過後面倒是發現了一些小結果,也不算是時間白費吧,不過以後要是這種不太重要的問題,時間不夠的話,希望自己能直接用數據;有空的話,探索一下還是很快樂滴。

下麵是我的探索求證過程,碎碎念的,要想直接看到結論的直接滑到底部就行。

正文:

根據2022年6月份的統計數據,中國共有173台超算進入榜單,占全球34.6%,排名第一。這個問題不大,上top500官網,STATISTIC下拉列表的List Statistic選了Country為中國就能看到數量。

接下來看Linux系統占比,在List Statictic下麵選了沒看到,後面去用Development Over Time就能直接看到占比了。當時看到了“Operating System”和“Operating System Family”兩個選擇,就都試了試,想看看是不是有什麼區別,沒想到還真的試出區別了,“Operating System”(就是操作系統)下看到的是Linux占比48%,但在“Operating System Family”(就是操作系統系列)下,卻是100%,我一下懵了。但是之後對比兩個圖(見下麵圖1),容易看到,上圖有很多類別,下圖則基本只有Linux、UNIX、Windows等,感覺上像是大類的意思。再仔細看,發現Operating System那裡,Solaris本就是基於UNIX衍生出來的一個系統,可以說是UNIX的一個子類,但是這個圖裡它和UNIX併列,該是區分了這兩種操作系統。而後顯然,這在Operating System Family里就不存在了;FreeBSD則是UNIX出來後較早的一個分支,差別還挺大,區分一下也情有可原。

圖1

 

後面又去點看著像圖表的Treemaps來看,左圖是Operating System(OS),右圖是Operating System Family(OS Family)的情況,在OS選項下,我看到Ubuntu、CentOS、RHEL等Linux的發行版和Linux竟然是併列關係,這時腦子裡已經初步猜測:操作系統和操作系統系列的區別,大抵就是基於linux內核的操作系統(distribution)和linux內核的區別。由於大家可以基於開源的Linux內核做出相對應的套件,就可以有很多操作系統,但是眾多操作系統它們的內核都是Linux。

OS選項OS Family選項

 

 後面想在網上找文章驗證我的觀點,但是網上連“操作系統系列”這個概念都很少。。。隨後去問老師,且問我的猜測,嗯。。。老師的回答有點哲學化,但是從老師那裡我知道超算的Linux系統占比該是100%。後面索性直接搜英文的文章(果然要逼自己一把,搜到了才發現原來生詞什麼的完全很少,而且因為是自己想知道的,不懂的重要動詞名詞立刻查一下,就理解得七七八八了)其實也沒找到答案,但是有句話中文翻譯過來是“這個要看你怎樣去定義這個術語”,覺得挺有道理,想著其實這個有點看這個網站是怎麼去定義OS和OS Family,後面到了飯點,就去吃飯了,想著等一下再看看那些從屬關係。

回來路上遇上個大佬,他說你看到一個不懂的,沒見過的,就先百度百科一下,他們打數模、比賽也是,一堆沒見過的代碼放過來,就上網百度看它是什麼,就是這些又不是什麼知識壁壘的東西,大體的邏輯都知道,不過是沒見過這個事物而已。我驚覺,我還真沒在百度上搜一下“操作系統系列”,【其實百度有它的優勢,你想搜經驗貼之類的,百度比bing搜索更勝一籌,有時候一些文章在bing沒搜到,能在百度搜到】趕緊搜一下,好吧,沒結果。他又回想一下,說老師好像說過操作系統都是串列,會不會是超算裡面有一些是並行的,就是有兩個操作系統那種。這給我提供了另一個思考的方向。

開始先搜索一下超算是有多少個操作系統,上了知乎,看了超算和我們平時的PC機不太一樣,我對它除了個top500榜外其實一無所知,當然我也沒必要瞭解那麼多,我的重點在於看它的操作系統數。結果是超算可以看作是很多台電腦,操作系統可以有多個,但是為了方便,便於彼此間的介面什麼的,一個就夠了。而且現在的電腦有並行操作系統,那是另外的操作系統。又直接去搜超算的操作系統,有意思的事情來了,美國那個Frontier用的是HPE Cray OS,嘿,這玩意是啥,在OS選項下的圖片占比沒有它呀,百度、bing搜索,都搜不到它究竟是個什麼樣的操作系統。這時候,我意識到,或許維基百科才能解我疑惑,搜索HPE Cray OS後,我看到了它的詞條列表有個與TOP500相關的,點進去,維基百科在頁面上查找關鍵詞“Operating System”,快速定位,發現超算的OS確實都標了Linux:

理論上HPE Cray OS要是基於Linux內核開發的話,那它也該在OS那裡吧,難道我的猜想錯誤?有點繞暈了。

先讀下去再看看,驚喜發現:(粉紅熒光部分文字)

谷歌翻譯:TOP500系統的所有操作系統都是基於Linux家族的,但上面的Linux是通用Linux。

2021年時的TOP500,OS選項下的Linux系統確實是264/500=0.528

到這裡,看來我的猜想應該是正確的。但是還不夠,這個說服力不是很強,繼續掃完Operating System先,發現了一句話:

The last non-Linux computers on the list – the two AIX ones – running on POWER7 (in July 2017 ranked 494th and 495th[99] originally 86th and 85th), dropped off the list in November 2017. 

谷歌翻譯:名單上的最後一臺非 Linux 電腦——兩台 AIX ——在 POWER7 上運行(2017 年 7 月排名第 494 位和第 495 位[99],最初排名第 86 位和第 85 位),於 2017 年 11 月從列表中掉下來。

最後的非Linux超算機,關鍵數據!我跑去top500看了2017年的超算系統占比:

 

 這個接下來要是AIX是UNIX內核開發的操作系統,那我的猜想就得到直接的證明。

後面來源百度百科:AIX是IBM基於AT&T Unix System V開發的一套類UNIX操作系統。  其它的則這麼表述:

 顯然,AIX是基於UNIX的操作系統。在Operating System下,AIX是基於UNIX開發出來的跟原來的UNIX不一樣的操作系統,但是它畢竟是UNIX那邊的,所以在Operating System Family 下他們就是一個系列的。

最終結論:我的猜測方向是對的,不過,更嚴謹地來說,是操作系統和操作系統系列的區別,大抵就是現有的基於linux內核的操作系統發行版(distribution)和基於linux內核自己研發的操作系統的區別。大家都是基於Linux內核,所以都是Linux OS Family,但是有些很成自己風格的Linux OS,不認為是“通用Linux”OS。本來TOP500那裡它就是這麼劃分了像CENTOS、Ubuntu、RHEL這些Linux發行版算做Linux操作系統“分出來”的,而像HPE Cray這些雖也是基於Linux內核開發的OS,但大家用得比較少,歸到了“generic Linux”即通用Linux下。

總結經驗:像這種新概念,先去bing、百度搜搜看有沒有相關的解釋,沒有的話再試試它本來語言的百科,(全球範圍內的,維基百科還是比較全的),那裡或許就有相關的鏈接。也想起之前關於使用搜索的情況,除了搜素引擎和搜索的技巧(如+、filetype:pdf這種)外,有些很好的網站也是需要收藏,因為搜索引擎不一定給你推薦到它,但它確實有很多專業的解釋。

                                                                                                   
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、插入排序 1、直接插入排序 基本思想:類似抓撲克牌,待排序元素在已排序的序列中從後往前遍歷,遇到小於他的元素向後移一位,直至遇到小於或等於他的元素,在其後插入即可 2、希爾排序(是對直接插入排序的一種改進) 二、交換排序 1、冒泡排序 基本思想:相鄰的兩個元素進行兩兩比較,如果出現逆序,則小的元 ...
  • 前言 本次案例最終實現效果 開發環境 python 3.8: 解釋器 pycharm: 代碼編輯器 界面代碼實現 先導入所需模塊 import tkinter as tk from tkinter import ttk import tkinter.messagebox 創建視窗 root = tk ...
  • 一:背景 1. 講故事 其實這個問題是前段時間有位朋友咨詢我的,由於問題說的比較泛,不便作答,但想想梳理一下還是能回答一些的,這篇就來聊一聊下麵這幾個鎖。 Interlocked AutoResetEvent / ManualResetEvent Semaphore 用戶態層面我就不想說了,網上一搜 ...
  • .NET運行時之書(Book of the Runtime,簡稱BotR)是一系列描述.NET運行時的文檔,2007年左右在微軟內部創建,最初的目的為了幫助其新員工快速上手.NET運行時;隨著.NET開源,BotR也被公開了出來,如果你想深入理解CLR,這系列文章你不可錯過。 BotR系列目錄: [ ...
  • 從頭一二去閱讀語法和命令說明,對於腳本小白來說比較枯燥,難以堅持,所以這裡選擇對一份完整的shell腳本代碼來逐行逐段解讀,希望可以一渡小白,幫助我們快速進入腳本的大門^_^ ...
  • 版本控制gitlab 什麼是版本控制gitlab GitLab 是一個用於倉庫管理系統的開源項目,使用Git作為代碼管理工具,併在此基礎上搭建起來的Web服務。安裝方法是參考GitLab在GitHub上的Wiki頁面。Gitlab是目前被廣泛使用的基於git的開源代碼管理平臺, 基於Ruby on ...
  • 提到直流無刷電機,那不得不提的就是有刷電機了。有刷電機有一個比較令人討厭的缺點:那就是“吵”。 因為電刷和換向環需要時刻不停地摩擦,才能給電樞供電。 所以,如果你想要一個“靜音風扇”的話,肯定不能選使用了有刷電機的產品。 並且電刷使用時間久了,比較容易損壞。電流較大的時候,你甚至可以看到電刷在換向的 ...
  • 腳本安裝lamp [root@localhost ~]# mkdir lamp [root@localhost ~]# cd lamp/ [root@localhost lamp]# mkdir files [root@localhost lamp]# ls files [root@localhos ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...