由於這幾天在 Apple 釋出 JDK 1.6.0_13 的更新後, 我就一直在 NetBeans 上練習撰寫 JavaFX 這個全新的技術.
在一個偶然的情況下, 我發現我的 NetBeans 是以 64-bit 執行, 其實這也沒什麼好奇怪的, 因為 OS X 底下的 Java SE 6 並沒有 32-bit 的版本, 忽然間我想到一個重要的問題, 那依附在瀏覽器的 Java Plug-in (用於執行網頁中的 Java Applet) 是跑哪個版本!?
接著, 我開始實驗到底 Safari 4 會是使用哪個版本的 Java Plug-in, 於是我來到 Sun 所提供的 JVM 測試網頁 進行測試, 沒想到測出來的版本是 1.5.0_19, 這個結果太出乎我的意料了, 我的臉差點沒垮了下來 =口=. 因為實際上在我的 Java 環境設定中, 已經設定以 Java SE 6 為最優先選擇, 但沒想到 Safari 4 最後卻是跑了舊版.
看到這樣的結果, 我不禁納悶了起來, 這到底是怎麼回事? 其實道理再簡單不過, 因為 Safari 4 目前是 32-bit 的版本!!! 在 32-bit 的主程式中怎麼可能可以運作 64-bit 的外掛呢!? 事實上也證明, 64-bit 的 Java SE 6 的確沒辦法在 Safari 4 中運作.
然後... 腦中忽然閃過了一個念頭, 那如果換成 64-bit 的瀏覽器呢!? 經過一番搜尋, 我在美國的 Oak Ridge National Laboratory 所發佈的 Mac OS X Utilities 中找到了一個可以在 OS X 下測試 Java SE 6 的瀏覽器-Browser 64. 安裝完以後, 接著就是測試!!!!!
結果很明顯的, 如果在 64-bit 的瀏覽器下, 的確是可以使用 Java SE 6 的, 也證明了自己先前的推論是正確的.
換成 Java SE 6 以後, Loading 畫面終於變得和其它平臺的版本相同了.
接著進行性能的測試, 以 Safari 4 為比較基準, 測試 JavaFX Sample 網頁中的 質數運算 範例, 在 1.5.0_19 版為核心的 JavaFX, 純 JavaFX Script 花了 0.735 秒, 以多執行緒運算時花了 0.394 秒, 而以 Safari 4 內建的 JavaScript Engine-Nitro 執行 JavaScript 時花了 2.599 秒.
而以 Browser 64 跑時又是如何呢? 在以 1.6.0_13 為核心的 JavaFX, 純 JavaFX Script 花了 0.543 秒, 多執行緒時花了 0.288 秒, 而 Browser 64 的 JavaScript 運算則耗費了 2.935 秒.
在以上的測試中 Java SE 6 真的比 Java SE 5 要好得多, 除了我主觀的認為在 JVM 載入的時間有改善之外, 運算性能也有大幅提升. 另外, Safari 4 的 Nitro 性能的確不錯, 勝過了 Browser 64, 但 JavaScript 比起 JavaFX, 還是遜色太多, 也因此對於跨軟體及硬體平臺的 JavaFX 的未來, 我充滿了期待.
經過這次的測試, 也讓我更期待 Snow Leopard 的更新, 因為在一個非純 64-bit 的作業系統下, Java SE 6 的表現都可以如此優異, 那到了純 64-bit 的系統下的表現應該會顯得更好. 至於 Safari 4 何時能執行 Java SE 6? 也只能等到 Snow Leopard 上市了.
附帶一提, 在 Snow Leopard 的 SPEC 中提到, Snow Leopard 中將會有 完整的 JDK, 到底有多完整, 我們就拭目以待吧!!
在一個偶然的情況下, 我發現我的 NetBeans 是以 64-bit 執行, 其實這也沒什麼好奇怪的, 因為 OS X 底下的 Java SE 6 並沒有 32-bit 的版本, 忽然間我想到一個重要的問題, 那依附在瀏覽器的 Java Plug-in (用於執行網頁中的 Java Applet) 是跑哪個版本!?
接著, 我開始實驗到底 Safari 4 會是使用哪個版本的 Java Plug-in, 於是我來到 Sun 所提供的 JVM 測試網頁 進行測試, 沒想到測出來的版本是 1.5.0_19, 這個結果太出乎我的意料了, 我的臉差點沒垮了下來 =口=. 因為實際上在我的 Java 環境設定中, 已經設定以 Java SE 6 為最優先選擇, 但沒想到 Safari 4 最後卻是跑了舊版.
[設定成以 64 bit JDK 6 運作的 NetBeans]
[出乎我預期以 1.5.0_19 版 Java Plug-in 為 JVM 的 Safari 4]
[預先在設定 Java 環境優先使用 Java SE 6]
看到這樣的結果, 我不禁納悶了起來, 這到底是怎麼回事? 其實道理再簡單不過, 因為 Safari 4 目前是 32-bit 的版本!!! 在 32-bit 的主程式中怎麼可能可以運作 64-bit 的外掛呢!? 事實上也證明, 64-bit 的 Java SE 6 的確沒辦法在 Safari 4 中運作.
然後... 腦中忽然閃過了一個念頭, 那如果換成 64-bit 的瀏覽器呢!? 經過一番搜尋, 我在美國的 Oak Ridge National Laboratory 所發佈的 Mac OS X Utilities 中找到了一個可以在 OS X 下測試 Java SE 6 的瀏覽器-Browser 64. 安裝完以後, 接著就是測試!!!!!
結果很明顯的, 如果在 64-bit 的瀏覽器下, 的確是可以使用 Java SE 6 的, 也證明了自己先前的推論是正確的.
換成 Java SE 6 以後, Loading 畫面終於變得和其它平臺的版本相同了.
接著進行性能的測試, 以 Safari 4 為比較基準, 測試 JavaFX Sample 網頁中的 質數運算 範例, 在 1.5.0_19 版為核心的 JavaFX, 純 JavaFX Script 花了 0.735 秒, 以多執行緒運算時花了 0.394 秒, 而以 Safari 4 內建的 JavaScript Engine-Nitro 執行 JavaScript 時花了 2.599 秒.
而以 Browser 64 跑時又是如何呢? 在以 1.6.0_13 為核心的 JavaFX, 純 JavaFX Script 花了 0.543 秒, 多執行緒時花了 0.288 秒, 而 Browser 64 的 JavaScript 運算則耗費了 2.935 秒.
在以上的測試中 Java SE 6 真的比 Java SE 5 要好得多, 除了我主觀的認為在 JVM 載入的時間有改善之外, 運算性能也有大幅提升. 另外, Safari 4 的 Nitro 性能的確不錯, 勝過了 Browser 64, 但 JavaScript 比起 JavaFX, 還是遜色太多, 也因此對於跨軟體及硬體平臺的 JavaFX 的未來, 我充滿了期待.
經過這次的測試, 也讓我更期待 Snow Leopard 的更新, 因為在一個非純 64-bit 的作業系統下, Java SE 6 的表現都可以如此優異, 那到了純 64-bit 的系統下的表現應該會顯得更好. 至於 Safari 4 何時能執行 Java SE 6? 也只能等到 Snow Leopard 上市了.
附帶一提, 在 Snow Leopard 的 SPEC 中提到, Snow Leopard 中將會有 完整的 JDK, 到底有多完整, 我們就拭目以待吧!!
留言
久 不 見
跟你say Hi !
風
真的好久不見耶
身子還好嗎!??
希望... 你都健康都過得很好喔^^
我考上自願役
整天頂著小平頭亂晃
快升士官拉 XD
你! 你! 你!
心情調適的OK吧@@
希望上天能保佑你爺爺! 加油
所以我這下士還比你大就是了 XD
我還 OK 啦
我也希望爺爺可以更好 ^^
謝謝有你的祝福~