字體:小 中 大 | |
|
|
2021/10/20 04:09:01瀏覽1468|回應11|推薦25 | |
蘋果的 MacBook Pro 自製 CPU + GPU 晶片甩掉英特爾,台積電配合,iMac 只會跟進。強權爭霸,英特爾可能要沒落了。
高本衲一輩子從沒進過英特爾,但也一輩子靠精通英特爾吃喝拉撒,世界上很少有人比我更懂英特爾的 CPU,我是說基層軟體運作的系統內部邏輯。我「搞」英特爾無微不至也無遠弗屆。幾十年來寫過幾千萬行電腦所謂的靈魂,電腦的邏輯和我自己的人腦已經分不清了。
人工智慧那塊不算,工商 app 那塊也不算,作業系統那一大塊算我老本行。此生今世寫了不知幾千萬行奇奇怪怪的東西。下面這個(不算軟體)現在我是自己寫的自己一個字也看不懂。白頭宮女話當年,不想深究只當有趣,反正世界上一定有人會懂。過去的就過去了,當時的我可是認真得一塌糊塗。
我最討厭人家說我電腦工程師「連切西瓜都不會」!來,高本衲教你電腦作業系統的基本設計邏輯:各矽晶片(含電子電路)藉驅動軟體操控正常運作當下遇外來刺激必需處理時會「戳」英特爾一下,英特爾當即停止所有一切運作立即跳到事先設定的記憶體固定位置跑所謂的 ISR(這是軟體),ISR 處理該刺激完後讓英特爾回神,之後系統繼續正常運作下去。作業系統就是幾個 ISR 及後面一大絡邏輯串起來的「思想(可以含人工智慧 algorithm「運算法」,靠內建)」。以上紅色部份是軟體,綠色部份是硬體。這裡沒有 app(像切西瓜軟體)。紅色的部份本衲沒有一項沒設計過,很多次還搞一輩子。
高本衲不會玩手機切西瓜很正常。晶片、刺激、系統、ISR、邏輯、思想、驅動器、人工智慧、英特爾,哪來的西瓜?西瓜是什麼體來著?能直接叫超級電腦幹嘛幹嘛不比切西瓜帥得多嗎蛤?我一聽到西瓜就生氣!已經很多年沒吃西瓜了。
ISR 在寫的時候是一字一句都要加總算時間的,你寫過這種不只邏輯還得爭分奪秒的軟體嗎?在有限的奈秒裡你必須完成所有運算和該做的事情,否則一切掛掉。系統翹辮子的時候你就會知道是誰的錯 —— 就你還有誰?英特爾不會負責,誰叫你是系統工程師?有興趣高本衲教你 x86 ISR 的機器碼怎麼寫,如何爭分奪秒 etc。英特爾不會忽然從宇宙消失,you have to live with it for a long long while。英特爾的妖道們不是吃素長大的。
我寫的這個重生殼劇本 (Born Again SHell or BASH script) 搞五天賺 $8,000 還不錯。總技長擔心 GPU 核心工作溫度過高出亂,要我查/證明,我沒幾天弄給他。衲時是顧問按件計酬,銀貨兩訖簡單明瞭。其他兩案之一寫在 為何命這薄? 裡,各賺一萬多,給老婆買新車家裡裝潢什麼都很好用。很高興案二爲 KLAC 奠定以 PCIe 爲後來超高速資料傳輸的基礎技術,直接植入他們的硬體邏輯電路晶片設計裡,後來事實證明選項之一的 Fibre Channel(對,是 Fibre 不是 Fiber)沒落,PCIe 大興。希望他們至今仍是臺積電的上游儀測供應商。高本衲是毫不謙沖的君子,叫你幹嘛幹嘛一言九鼎絕無二話因爲我是對的,公司再大也一樣不然別請我。
第一案我找出 KLAC 自家矽晶片硬體設計錯誤的地方(他們當時快被臺積電開除了)及如何修正。第二案我告訴他們未來十年在超高速資訊傳輸該採何種技術入植公司核心晶片邏輯裡。第三案我找出與他們合作的 Nvidia GPU 內部物理工作溫度,接不接受容不容忍公司科學家可以自行決定。三個月拿錢走人高本衲義無反顧。貴公司要不要雇用我這種高科技顧問?你要解決什麼、在發展什麼、想知道什麼?I’m your guy,每案兩週一萬一月兩萬。Modus vivendi no?
用四種顏色足以繪製任意複雜的世界地圖。該人工智慧 project 我拿 100,滿分。有沒有人想看高本衲的 AI 程式?電腦語文叫 Lisp 像英文,比英特爾的 x86 機器語言易懂得多。
------------------------------------------------------------
#!/bin/bash if test $# -eq 0; then counter=1 gap=1 else echo $1 | grep "^[0-9]*$" > /dev/null if [ $? -ne 0 ]; then echo "Usage: tmps.sh probe-this-many-times every-this-many-seconds" echo "Defaults to 1 probe, 1 second; accrued result is in tmps.log" exit else counter=$1 if [ $2 ]; then gap=$2 else gap=1 fi fi fi echo -e "GPU6:0\t\tGPU6:1\t\tGPU7:0\t\tGPU7:1\t\tGPU8:0\t\tGPU8:1" > tmps.log echo "--------------------------------------------------------------------------------------" >> tmps.log while [ $counter -gt 0 ] do tmps.exp | awk /^[0-9]+/ | awk {print $1} | tr "\n\r" "\t" >> tmps.log echo "" >> tmps.log counter=$(($counter-1)) sleep $gap done 藉由呼叫一個期待劇本(expect script): #!/usr/bin/expect -f foreach host {15.22.0.19 15.22.0.20 15.22.0.21} { spawn ssh root@$host expect "Password: " send "somepasswordhere\\rr" expect " # " send "nvidia-smi -q --gpu=0 | grep Temperature | awk {print \$3}\\rr" expect " # " send "nvidia-smi -q --gpu=1 | grep Temperature | awk {print \$3}\\rr" expect " # " send "exit\\rr" expect eof } 與三臺超微伺服器搭上線,之後進入超微內圖像處理器取得後者工作溫度數據,通過格瑞普、謝德、和奧客的處理後回到重生殼劇本,再由直列轉成橫排後送出。所得資料舉例如下: GPU6:0 GPU6:1 GPU7:0 GPU7:1 GPU8:0 GPU8:1 ----------------------------------------------------------------------------------- 49 56 47 61 45 53 49 56 47 61 45 53 49 56 47 61 45 53 諸位看客大德有無對期待劇本知之甚詳者,煩請不吝告知小衲如何可以將二者合而為一,以免劇本四散零零落落? Gaam -- Woon -- Naar! ------------------------------------------------------------ 11/2 後記:成功了!像這樣弄就對: prompt $ cat pwd.orig.sh #!/bin/bash echo "This is pwd.orig.sh" echo "About to call pwd.orig.exp" pwd.orig.exp echo "Done with pwd.orig.exp" echo "pwd.orig.sh exiting" exit ------------------------------------------------------------ prompt $ cat pwd.orig.exp #!/usr/bin/expect -f spawn ssh root@12.34.56.78 expect "Password: " send "somepasswordhere\\rr" expect " # " send "pwd\\rr" expect " # " send "exit\\rr" expect eof ------------------------------------------------------------ prompt $ pwd.orig.sh This is pwd.orig.sh About to call pwd.orig.exp spawn ssh root@12.34.56.78 Password: server6:~ # pwd /root server6:~ # exit logout Connection to 12.34.56.78 closed. Done with pwd.orig.exp pwd.orig.sh exiting ------------------------------------------------------------ prompt $ cat pwd.withexp.sh #!/bin/bash echo "This is pwd.withexp.sh" echo "About to invoke expect" expect -c " spawn ssh root@12.34.56.78; expect \"Password: \"; send \"somepasswordhere\\rr\"; expect \" # \"; send \"pwd\\rr\"; expect \" # \"; send \"exit\\rr\"; expect eof; " echo "Done with expect" echo "pwd.withexp.sh exiting" exit ------------------------------------------------------------ prompt $ pwd.withexp.sh This is pwd.withexp.sh About to invoke expect spawn ssh root@12.34.56.78 Password: server6:~ # pwd /root server6:~ # exit logout Connection to 12.34.56.78 closed. Done with expect pwd.withexp.sh exiting |
|
( 心情隨筆|心情日記 ) |