矽谷新創公司Transitive將搭起關鍵性的橋樑,讓蘋果電腦順利轉換到英特爾架構。但分析師質疑,使用類似的轉譯器,執行效果可能大打折扣。
Rosetta軟體把目前為PowerPC蘋果電腦寫的軟體,轉譯成可在內建英特爾晶片的麥金塔電腦上執行,而Transitive供應的正是Rosetta軟體使用的引擎。Transitive執行長Bob Wiederhold說:「我們與蘋果有長期的合作關係。」
在某電腦程式執行的同時,Rosetta會把PowerPC指令轉譯成對應的x86指令。雖然能轉譯的程式有限,但這個軟體能協助蘋果電腦用戶與軟體開發人員降低轉換硬體平台的痛苦。蘋果長Steve Jobs 6月6日在一場專題演講中展示Rosetta,證明它能執行PowerPC版的Adobe Photoshop以及微軟的Word和Excel--這三種應用程式攸關麥金塔電腦的成敗。
Jobs展示Rosetta的過程順暢無阻,順利地載入並修改了幾份文件。但分析師仍認為,蘋果和Transitive仍面臨Rosetta效能上的挑戰,因為以往電腦製造商設法借助轉譯器,把原本為一種晶片寫的軟體移植到改用不同晶片的機器上,但這類嘗試成左漕狺l寥寥無幾。
Illuminata分析師Gordon Haff說:「歷史告訴我們,二進制轉譯(binary translation)基本上是行不通的。也釵陷瞻@日轉譯器能夠完美達成任務,但就往例而論,這種概念往往摔個倒栽蔥,多次遭電腦工業界揚棄。」
但總部在加州洛斯加托斯的Transitive矢志要樹立更高的標竿,讓應用程式從舊處理器平台遷移到新處理器平台的執行效果,就算與專為新平台而寫的原生軟體(native software)比較,也不至於太相形見絀。
Wiederhold舉Transitive第一家客戶Silicon Graphics Inc.(SGI)為例說,搭配舊型處理器使用的軟體經轉譯後在新機器上執行的速度,通常最起碼也能達到原生軟體執行速度的80%。但他承認,得分這麼高,一部分原因是SGI系統用於繪圖任務,而繪圖的轉譯損失(translation penalty)不大,甚至可說沒有。
他指出,就運算密集的任務而言,轉譯軟體的執行效能可達到原生軟體的60%到80%。
另一質疑者是Insight 64分析師Nathan Brookwood。他說:「說是說50%或60%,但實際上的效能只做到30%或40%。」先前的嘗試包括:迪吉多電腦公司(Digital Equipment)用FX!32軟體在內建Alpha晶片的電腦上執行x86 Windows程式;惠普公司用Aries軟體在Itanium平台上執行為PA- RISC晶片所寫的HP-UX軟體;英特爾用IA 32-EL軟體在Itanium平台上執行為x86晶片而寫的程式。
但Jobs目前還算滿意。在展示會上,Jobs說,轉譯軟體跑得「滿快的」,儘管他的簡報幻燈片上宣稱效能「(夠)強」。他用來展示Rosetta的電腦內建一顆3.6GHz的Pentium 4處理器,以及2GB的記憶體。
蘋果雖不以竭盡所能支援麥金塔電腦舊機型的使用者著稱,但以往在協助用戶轉換處理器方面倒是有一些經驗。1994年,當蘋果電腦捨棄摩托羅拉680x0處理器、改用PowerPC時,就採用模擬軟體(emulation software),讓使用者在新型電腦上執行舊軟體。
當然,Wiederhold也樂於贏得蘋果這個客戶。他說:「和釵h擁有突破性技術的新創公司一樣,我們的技術也引起諸多懷疑--懷疑我們能否達到所承諾的效能。爭取外界的肯定,對我們的成市D常重要。」
但目前情況仍不明的一點是,Rosetta能否逆向操作--把x86軟體轉譯成可在PowerPC麥金塔電腦上執行。若是可以,這種弁鈺N確保未來的麥金塔軟體可在前幾代的舊機器上使用,有助於鼓勵潛在的PowerPC麥金塔電腦用戶升級到新機型,進而顯著拓廣Transitive的營收來源。
Transitive去年秋季發布的QuickTransit版本就支援此弁遄A但Wiederhold不願透露蘋果打不打算採用。
不過,蘋果希望程式設計師製作該公司所謂的「通用二進元」(universal binaries)軟體--同一套程式?包含適用兩種處理器的版本。這麼做會造成程式變得臃腫釵h,但若是程式設計師遵照這種作法,那麼就毋須使用從英特爾到PowerPC的轉譯器了。
蘋果不願評論Transitive是否與Rosetta的技術水乳交融,但Jobs的確在接受紐約時報訪問時證實Transitive在其中扮演一份角色。
接受CNET News.com專訪時,蘋果資深副總裁Phil Schiller拒絕說明Rosetta軟體有多少比例是蘋果自己開發出來的。「我不談細節,但那絕對是蘋果的技術,」Schiller說。
Transitive員工約65人,工程師全住在英格蘭曼徹斯特。創辦人兼技術長Alasdair Rawsthorne在1995年就讀曼徹斯特大學時發明這項技術,並據此在2000年創立公司。Wiederhold說,該公司曾在2000年10月、2002年2月和2004年9月三度籌募資金,共集資2,400萬美元,股東包括Pond創投夥伴公司、Crescendo創投公司和Accel夥伴公司。
Wiederhold指出,目前Transitive的客戶是六家大型電腦製造商,新客戶會在未來數月陸續公布。今年底或明年初時,該公司希望開始把產品賣給第二類客戶:軟體公司。軟體公司可採用Transitive的QuickTransit,以加速把自家軟體推向新處理器平台。
QuickTransit可用來轉譯原本為x86、大型主機(mainframe)、Power或MIPS平台所寫的軟體,並且把軟體遷移到Itanium、PowerPC和x86處理器平台。
AltiVec與其他局限
縱使Rosetta能轉譯釵h麥金塔應用程式,仍有一些重大的局限。
蘋果在寫給軟體開發人員的報告中說:「釵h應用程式在轉譯後就能執行,但不是全部都可以。轉譯後可以用的應用程式,執行速度絕不會像原生程式一般快,因為轉譯過程本身會耗上一點資料處理時間。」
蘋果說,Rosetta是為了「轉譯目前市面上所售的應用程式,這些程式用來在內含G3處理器的PowerPC平台上執行,而且搭配Mac OS X作業系統」。
但蘋果指出,Rosetta不適用於幾種類型的程式:專為使用PowerPC之AltiVec指令所寫的程式;需要使用G4或G5晶片才能執行的程式;為Mac OS 9而寫的程式(目前可在Mac OS X的「經典」模式下執行);核心延伸(kernel extensions);依賴核心延伸的應用程式;以及在「系統偏好」控制台裡插入偏好設定(preferences)的程式碼。
蘋果聲明:「你的應用程式與Rosetta的相容程度,端視應用程式的類型而定。具有釵h使用者互動而且運算需求偏低的應用程式,例如文書處理程式這類,相容性就相當大。需要少釣洏峈怳為吽A而且有時運算需求高或使用OpenGL的應用程式,在大多數情況下,也頗為相容。運算需求高度密集的程式,則不相容。」
本文章來自於 :::::: Apple Corner ::::::
這份報導的網址是:
http://applecorner.com/modules.php?name=News&file=article&sid=384