2011年2月21日

Your Inventory and RAM

今天看了一篇有意思的文章(在 Misty Night),是一位日本人寫的。內容是討論於 Second Life 中身上庫存物件與記憶體使用的關係。

在新手時,就流傳著當身上物件數量越多,會越 LAG 的說法。只是通常這種事說歸說,既沒有看到林登官方的評論,也沒有其他明確的數據佐證,只是停留在「似乎有這麼一回事」的印象。因為說實在的,當你身上的物件多時,你會怎麼做?一般人不外乎四種選擇:
  • 花時間整理。
  • 花時間刪。
  • 不管它。
  • 另外弄分身帳號等其他方式。
前兩者的共通麻煩處在同一點,得花時間。畢竟雖然拿到不少 Freebie,但更有一些是花銀兩買來的。所以不論整理或刪除,都得花時間過濾。至於最後一項,牽涉到物件是否有轉移權限的問題,所以也不是個很好的方法;況且,通常是信誓旦旦地從頭來過,重新整理不再亂拿,但終究無法敵過人的本性,亂,是無可避免的。

有些較好心的,在遇到新手時,會敦敦教誨新手:「要注意身上的物件數量啊」、「要趁早就對身上的物件分類與整理,不然日後會亂掉啊」,或是「不要拿一些用不到的免費品」。不過按人性來看,基本上言者諄諄,聽者藐藐,能有效並成功的少之又少。這一切都要等到玩家脫離新手階段,在有一天找不到身上的某物件時,才會恍然大悟,但又為時已晚。

那「不管它」是否是個最好選項?當然不是。越不管,身上的東西只會越亂,這恐怕是使用者無可奈何又偷懶之下的選擇。

講了這麼多,其實一直沒切入正題。就是身上物件數與記憶體有何關係?答案是有,因為當登入 Second Life 後,你的 Avatar 會由林登的資產伺服器中下載身上所有的庫存物件資料,也就是身上東西越多越久。然後也並不是下載完之後就結束這場惡夢,因為你在 Second Life 中的所有行為,也會跟身上穿戴的,以及身上庫存的物件有關,所以必須要儲存在記憶體中。因此你可以想像,身上的物件數越多,記憶體的耗用也越高。透過那位日本人的實驗,可以確定物件多產生 LAG 的理論為真。

一個新出生的新手,即便不拿取任何東西,身上就至少會有大約兩百多個物件,這包括身上的服飾、頭髮、皮膚等等;大概一週左右就會成長到一千,如果拿取或購買的速度更頻繁,會更快速累積。通常使用者首次意識到,可能是將近一萬個物件左右時,會開始產生試圖管理與節制的念頭,不過這不會太久。會產生真正的感覺,一定是又增加二到三萬,又感到 LAG 後。

經由那個實驗的結果,我得到幾個結論:
  1. 身上庫存數量與記憶體耗用成正相關,也與 LAG 程度成正相關。
  2. 退出結束 Second Life 程式的時間會相對增加,因為必須將狀態回存至官方的伺服器。
  3. 使用多個非官方的瀏覽器,發生當機現象更多。(雖然屬實,不過我覺得官方的也好不到哪裡去
  4. 該作者認為一般使用者的合理數量是低於六萬,其實我覺得六萬還是太高。如果沒有在製作物品並保留各版本與半成品,那麼建議不要高於兩萬,過三萬後其實就應該可以明顯感受到慢。他處我看過討論身上庫存的文章,是提到如果過十萬件,會幾乎當機不離身。
  5. 在(瀏覽器)多開的狀態下,因為記憶體耗用無法全數滿足最高負載者,所以會感覺到嚴重的 LAG;如果單獨使用,根據那個實驗取得的數據是使用將近 1GB 的記憶體。
  6. 某些流量較高的 Sim,島主有可能會開啟管理工具,將 Loading 較重的使用者踢開。這包括身上穿戴太多耗能的 AO 與 Hud、使用分子特效的人,還有就是身上物件數太多的人。因為這些 Avatar 的登入,不但會讓整個 Sim 產生更嚴重的 LAG,也會影響到其他使用者(*註一)
  7. 最後的結論就是,你必須好好整理與管理身上的物件。這在你活在 Second Life 中是無法避免的宿命,至少到目前為止都是。
-----
註一:
因為其他使用者也必須載入你的 Avayar 相關資料,包括外形與動作。

沒有留言:

張貼留言