2009年5月8日 星期五

事實: Linux 不是玩具 - Linux、Google、超級計算機

之前在 Mobile01 看到一個 thread (討論串) 裡面在爭執 Windows 與 Linux 的優劣,其中一位網友直說 Linux 的不是,說 Linux 下沒什麼 game 的支援,甚至說 Linux 只是個玩具 ... 個人認為,「玩具」這兩個字對 Linux 無非是種莫大的誤解與偏見。雖然 Linux 沒像 Mac OS X 或 Windows 那麼 user friendly、GUI 效能也沒像 Mac OS X 那麼好、遊戲沒像 Windows 那麼多,但光是這樣是否就足以斷定 Linux 只是一個玩具?為了推翻這個說法,以下讓我透過這篇文章來為 Linux 平反。
圖 1: 名列 Top500 超級計算機中所使用的作業系統,Linux (黃色) 佔了大部份的比例。
圖 1: 名列 Top500 超級計算機中所使用的作業系統,Linux (黃色) 佔了大部份的比例。

Linux 與 Google

Google,一個以搜尋引擎起家的公司,因能提供確切與迅速的搜尋服務而廣受大眾的青睞,竄紅為當前全球最大的搜尋引擎。這樣的服務品質完全是藉重於他們所研發的演算法以及背後強大運算能力的支持,而這其中強大的運算能力正是來自其幕後龐大數量 server 所構成的網路。在 Google platform 這篇文章中提到: 「雖然確切的數字並未被正式公開,但有人估計 Google 至少在世界各地維護了共超過 450,000 台的 server ... 每個 Google 的叢集 (cluster) 內包含數以千計的 server,為了平衡 server 之間的流量與負載,當叢集一接收到外部連線就會立刻透過其中的硬體將查詢送到負載最輕的 server 上。這也使得 Google 成為世界上其中一個最大也最複雜的內容傳遞網路 (Content Delivery Network)」 ... 就這些 server 而言,重點當然不在於每台 server 上都必須安裝一套作業系統,而是在於這些 server 上運行的是什麼樣的作業系統。事實上,在 Google platform 中有提到,這些 server 上運行的作業系統正是 Linux。

Google 這個被微軟視為頭號假想敵的企業,竟然是個 Linux 的重度使用者 (這點透過 Netcraft 的查詢也可以證明,網域名稱包含 .google.com 且 Netblock 為 google inc. 的 server 清一色跑的幾乎全是 Linux。Netcraft 提供的服務可以用來查詢一個網站所使用的 OS 以及其它相關資訊)。如果說 Linux 只是玩具,那一個企業要如何透過一個玩具作業系統對微軟造成威脅?
圖 2: IBM Roadrunner,2008 年 11 月 TOP500.Org 公佈世界上最快的超級計算機。
圖 2: IBM Roadrunner,2008 年 11 月由 TOP500.Org 所公佈世界上最強的超級計算機。
或許有人會說 server 本來就是 Linux 的本行,如果不這麼做的話 Google 不知道要付多少授權費或研發費用在作業系統上。然而這是否也突顯了 Linux 基於一個自由軟體的優勢? Google 選擇的不是 Mac OS X Server、選擇的不是 Unix 更不是 Windows Server,而是選擇了 Linux ... 顯然,Google 的選擇並沒有錯。

Linux 與超級計算機

撇開網路伺服器的應用不談,把焦點轉移到 Linux 的高階的應用上。談到計算機的高階應用就不能不談高性能計算機 (high performance computer) 以及超級計算機 (supercomputer)。所謂高性能計算機指的是每秒可以執行 1 兆次以上浮點運算 (1 teraflop 或 1012 flops) 的計算機,而超級計算機則又是高性能計算機中更頂級的一群。高性能計算 (high-performance computing) 歷來備受各國政府、教育機構以及研究人士的關注,應用在石油勘探、氣象預報、地震分析、生物製藥、工程仿真、科學計算、商業計算等 ... 眾多領域,它代表的是一個國家研究水平的象徵。

根據 TOP500.Org 資料所統計出來的趨勢 (見圖 1),近年來 Linux 正以壓倒性的優勢,迅速在高性能計算機中取代其它作業系統的地位。另外,在 <<Unix 失勢 HPC 市場兩年份額下降三分之二>> 一文中對這樣一個趨勢則有更清晰的描述

... 十年前,當 Linux 還在襁褓之中的時候,Unix 已經成了這個市場的主宰。在世界 500 強超級計算機中,採用 Unix 作業系統的超級計算機佔 99.4%,只有 3 台採用其它的系統,一台 Linux 系統,一台基於 BSD 的系統和一台其它的系統 ... 五年之後的 2003 年,Linux 長大了。雖然 Unix 仍佔市場的大部分份額,但是在世界 500 强超級計算機中只有 289 台採用 Unix,佔 57.8%,Linux 佔 184 台,市場份額達到了 36.8%。
...
前幾天,Top500.org 公佈了最新的世界 500 強超級計算機排行榜,Unix 的表現不太好。在世界 500 強超級計算機中,有 439 台使用 Linux 作業系統,佔 87.8%。只有 23 台採用 Unix 系統,佔 4.6%。有 31 台採用 Linux 和 Unix 混合的系統,還有幾台採用 Mac OS 或者 BSD 系統。 但是,即使把這些都算作 Unix 系统,Linux 現在也非常明顯地佔有優勢。 ...

英國記者 Paul Rubens 說: 「Linux 正在越來越多地做過去一直讓 Unix 做的工作」。反觀微軟的 Windows,文中甚至沒有支字片語提到這個作業系統,如果按照上面的數據,Linux 佔 87.8%,Unix 佔 4.6%,Linux 和 Unix 的混合系統有 31 台佔 6.2%,全部加總起來後推算,Windows 所佔的比例還不到 1.4%,這當中還沒有扣掉 Mac OS 以及 BSD 等其它作業系統所佔的部份。
圖 3: Roadrunner (走鵑),一種鳥類,於路地奔跑最快可達時速 24 公里。
圖 3: Roadrunner (走鵑),一種鳥類,於路地奔跑最快可達時速 24 公里。
除此之外,依據 TOP500.Org 的評斷方式,現在世界上最強大的電腦 (2008 年 11 月的排名) 是採用 Linux 作業系統IBM Roadrunner 超級計算機 (見圖 2),因此 Linux 不僅是前 500 大計算機中使用最多的作業系統,它還光榮地在世界第一強的超級計算機上被執行。

如果說 Linux 真的是玩具,而世界上排名第一的超級電腦 Roadrunner 靠的卻是一只玩具來驅動,是否意謂著這台超級電腦本身其實也只是個玩具?此外,超級電腦還被視為一個國家科技水平的象徵,這是否又意謂著一個國家的聲譽可以如此草率地寄託在一個玩具作業系統上?我想,兩者的答案顯然都是否定的吧。

參考文章

Unix 失勢 HPC 市場兩年份額下降三分之二
HPC TOP500 追捧高性能計算進入 AMD 巴塞羅那時代?

11 意見:

木头 提到...
作者已經移除這則留言。
YC 提到...

正好相反, 那位網友對 Linux 的批評, 其實是:Linux不是玩具, 因為上面沒有 Game.

Google 養得起 Linux, So What ?

愛用 Windows 的人還是會繼續用Windows, 愛用 MAC 的人還是繼續用 MAC. Why !!? 因為這些人都不是 Google !!

用了 Linux 就會變成 Google 嗎 ? 恐怕不一定.

Justin Lee 提到...
作者已經移除這則留言。
Justin Lee 提到...
作者已經移除這則留言。
Justin Lee 提到...
作者已經移除這則留言。
Justin Lee 提到...

> Linux不是玩具, 因為上面沒有 Game.

Linux 上不只有 Game,而且還不只有一種: Top 10 Free Linux Games

> Google 養得起 Linux, So What ?

一個企業是不可能認養一個玩具做為其作業系統的主軸,更何況是全球第一的搜尋引擎尤是如此,so Linux is not a toy.

> 愛用 Windows 的人還是會繼續用Windows, 愛用 MAC 的人還是繼續用 MAC. Why !!? 因為這些人都不是 Google !!

小弟我並沒有任何資格去強迫誰使用什麼 OS,這篇文章只是在為 Linux 平反,如是而已。
是的,您說的沒錯,沒有人是 Google,因為 Google 是一家公司的名稱,一般人不太可能會把自己的名字取叫 Google。

> 用了 Linux 就會變成 Google 嗎 ? 恐怕不一定.

沒錯,以我自己來說,自從小弟我開始使用 Ubuntu Linux 後,敝人的英文名字都一直維持叫 Justin,並沒有因為用了 Linux 而改名 Google,您的推論非常正確!

藍色天枰 提到...

用windows的人只重視game
用linux的人game只是消遣

windows若不是綁了一堆硬體廠商
可能比linux還難用

藍色天枰 提到...

其實想想有多少人因為windows而受益

單看電腦書就好了

所以當然是windows好ㄚ!@#$

匿名 提到...

對他們來說最重要的[計算]
就是搶虛寶的擲骰子比大小啦

windows跑計算強不強當然就沒差啦

Justin Lee 提到...

因為利害衝突 (conflict of interest) 而反 Linux 的人相信是一定有的,就如同藍色天枰所說的,這些書商因為寫 Windows 的書而受惠,如果某天因為某種原因造成使用 Windows 的人變少了,這些書商就無法靠 Windows 的書賺錢或是書就買得不好,所以是有一定的動機的。

此外對很多程式設計師或 IT 產業人員而言,Windows 是他們吃飯的工具,如果說 Windows 真的沒落了,可能會引響到他們的生計並迫使他們要重新去學習其它非 Windows 平台的技術。

基本上小弟能想到這些反 Linux 反 Macintosh 的人士他們的動機有可能是其中的幾種原因:

1) 利害衝突
2) 受到網路上或各種媒體所散播的 FUD 影響
3) 擔心以後沒有 game 可以玩
4) 個人習慣或喜好的問題

個人認為前兩點的動機最強烈,不過就第一點來說,常會看到網路上有人說 Windows 的佔有率多高多高是不可能被其它 OS 取代等等之類的話,那為何這些人士還需要擔心 Linux,實在不是很了解...。

(p.s. 今天把意見從內嵌模式改為整頁模式,感覺起來好多了,之前在內嵌模式下編寫意見時不知何故都不能剪貼文字)

Justin Lee 提到...

究竟是不是用「搶」的是不得而知,不過這些看似既前衛又抽象的理論與科學是一定有其研究的價值的。 (事實上,應該說這種研究是非常重要而且價值非凡)

電的發現者富蘭克林有一天正在邀請人們參觀他的新發明。其中一個闊太太揶揄地問說: 「可是,它有什麼用呢?」,富蘭克林回答道: 「夫人,新生的嬰兒又有什麼用呢?」。(原文)

小嬰兒一生下來就會一直哭哭啼啼,又吵著要喝奶水,而其它的時間大部份又都在睡覺,感覺上剛初生的寶寶確實是沒什麼多大的用處,但問題是在於他長大之後是否能有什麼成就? 同樣地,電對當時的人來說也是一個既前衛又抽象的概念,對當時的人來說看起來或許沒有多大的用處,但是如果拿今日生活來比,電卻是生活中難以拋棄的東西。這一路走來如果沒有這些科學家的研究與貢獻,你我現在也就不會坐在電腦前面閱讀著這篇文章。

要投入像文中提到的 "石油勘探、氣象預報、地震分析、生物製藥、工程仿真、科學計算、商業計算" 等這些領域需要有龐大的計算資源才能加速研究的腳步,所以就需要有 Roadrunner 這類的超級電腦來負責,Linux 的優點就在於他的開放原始碼與價格,試想如果以 Windows 這種單 CPU 或甚至是單核心的授權方式,每多一個 CPU 或核心就要一筆授權費,那 Roadrunner 這種 12960 IBM PowerXCell 8i CPU,6480 AMD Opteron dual-core 處理器* 的電腦需要多少授權費? 和 Windows 比起來使用 Linux 少了上述的種種限制以及被微軟控告的潛在威脅。而更重要的是 Linux 在 HPC 上的成功,證明了它的擴充能力與協調多 CPU/核心 能力,也證明其在尖端電腦上的應用是非常可行的。

氣象預報、地震分析、生物製藥...等這些研究是否真是所謂的「虛寶」要看眼光是放在哪裡,早期人們在研究電學時應該也不會料想到今天它會帶給人們這麼大的幫助;如果氣象預報可以準確預報天氣,如果地震分析可以知道何時何地會發生多大地震,如果生物製藥可以研發出治療 HIV 與癌症的藥物,這些研究成果在未來不知可以拯救多少生命 ---- 眼光放遠就可以看出它們的價值。