<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Database Hot Loader 最終曲：Tuning and Measuring Performance</title>
	<atom:link href="http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance</link>
	<description>遊戲開發‧遊戲程式‧遊戲設計</description>
	<lastBuildDate>Fri, 10 Sep 2010 07:08:06 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: 半路</title>
		<link>http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance/comment-page-1#comment-866</link>
		<dc:creator>半路</dc:creator>
		<pubDate>Thu, 13 Nov 2008 14:34:11 +0000</pubDate>
		<guid isPermaLink="false">http://blog.monkeypotion.net/?p=582#comment-866</guid>
		<description>@Aming: 
原來如此！
果然需要修改 Lua 的源碼，才能夠讓 C++ 與 Lua 共用 string table。
不過的確是個很不錯的優化技巧，以後有需要可以來實作看看。 -w-</description>
		<content:encoded><![CDATA[<p>@Aming:<br />
原來如此！<br />
果然需要修改 Lua 的源碼，才能夠讓 C++ 與 Lua 共用 string table。<br />
不過的確是個很不錯的優化技巧，以後有需要可以來實作看看。 -w-</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aming</title>
		<link>http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance/comment-page-1#comment-865</link>
		<dc:creator>Aming</dc:creator>
		<pubDate>Thu, 13 Nov 2008 02:49:17 +0000</pubDate>
		<guid isPermaLink="false">http://blog.monkeypotion.net/?p=582#comment-865</guid>
		<description>沒錯
因為C++跟LUA共享string tabl..
C++ string 立即變成lua string 兩者本質上是一樣的
所以成本只有產生lua stack var跟ref++...

這在其他引擎跟SCRIPT VM 交互很常見處理方法
缺點是你要修改lua source跟把 lua string interface開放給C++ Core
加上要配合 String 用法..減少直接使用字元陣列 不然開銷還是一樣大</description>
		<content:encoded><![CDATA[<p>沒錯<br />
因為C++跟LUA共享string tabl..<br />
C++ string 立即變成lua string 兩者本質上是一樣的<br />
所以成本只有產生lua stack var跟ref++&#8230;</p>
<p>這在其他引擎跟SCRIPT VM 交互很常見處理方法<br />
缺點是你要修改lua source跟把 lua string interface開放給C++ Core<br />
加上要配合 String 用法..減少直接使用字元陣列 不然開銷還是一樣大</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 半路</title>
		<link>http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance/comment-page-1#comment-863</link>
		<dc:creator>半路</dc:creator>
		<pubDate>Wed, 12 Nov 2008 12:55:18 +0000</pubDate>
		<guid isPermaLink="false">http://blog.monkeypotion.net/?p=582#comment-863</guid>
		<description>@Aming: 
你的意思是讓 C++ 與 Lua 共享同一份 string table？
……… 好殺的方法！ O_O

這樣一來，在使用 lua_pushstring() 時，如果字串已經存在 string table 中，是不是就能夠節省掉處理字串的成本？</description>
		<content:encoded><![CDATA[<p>@Aming:<br />
你的意思是讓 C++ 與 Lua 共享同一份 string table？<br />
……… 好殺的方法！ O_O</p>
<p>這樣一來，在使用 lua_pushstring() 時，如果字串已經存在 string table 中，是不是就能夠節省掉處理字串的成本？</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aming</title>
		<link>http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance/comment-page-1#comment-862</link>
		<dc:creator>Aming</dc:creator>
		<pubDate>Wed, 12 Nov 2008 02:23:27 +0000</pubDate>
		<guid isPermaLink="false">http://blog.monkeypotion.net/?p=582#comment-862</guid>
		<description>想要比較快要實作StringTable
我是直接拿lua的StringTable使用
CString跟ScriptVM共用同一個StringTable

pushstring 成本降到更低 wwwww</description>
		<content:encoded><![CDATA[<p>想要比較快要實作StringTable<br />
我是直接拿lua的StringTable使用<br />
CString跟ScriptVM共用同一個StringTable</p>
<p>pushstring 成本降到更低 wwwww</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 半路</title>
		<link>http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance/comment-page-1#comment-856</link>
		<dc:creator>半路</dc:creator>
		<pubDate>Mon, 10 Nov 2008 13:35:29 +0000</pubDate>
		<guid isPermaLink="false">http://blog.monkeypotion.net/?p=582#comment-856</guid>
		<description>@gino: 
用 VSTO 做資料產生器的確是個好主意。
有空的話我會嘗試看看～</description>
		<content:encoded><![CDATA[<p>@gino:<br />
用 VSTO 做資料產生器的確是個好主意。<br />
有空的話我會嘗試看看～</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gino</title>
		<link>http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance/comment-page-1#comment-852</link>
		<dc:creator>gino</dc:creator>
		<pubDate>Sun, 09 Nov 2008 04:13:54 +0000</pubDate>
		<guid isPermaLink="false">http://blog.monkeypotion.net/?p=582#comment-852</guid>
		<description>不知道能不能用VSTO做個資料產生器...模擬製作出實際遊戲的資料量...
再來進行測試...</description>
		<content:encoded><![CDATA[<p>不知道能不能用VSTO做個資料產生器&#8230;模擬製作出實際遊戲的資料量&#8230;<br />
再來進行測試&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 半路</title>
		<link>http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance/comment-page-1#comment-847</link>
		<dc:creator>半路</dc:creator>
		<pubDate>Sat, 08 Nov 2008 02:11:11 +0000</pubDate>
		<guid isPermaLink="false">http://blog.monkeypotion.net/?p=582#comment-847</guid>
		<description>@Ricky: 
資料數量太少，主要是因為我懶得在 Excel 中產生出上萬筆資料。 XD

不過，在測試資料裡共有 5 張表格，每張表格裡有 300 筆資料，全部加起來總共有 1500 筆資料喔。雖然比起遊戲中真正使用的資料庫，測試資料的規模數量仍然非常少，但我想應該足以代表某種程度上的驗證成果了。

在進行效能測試之前，我原先也認為 GetDataRawedCached() 的平均效能應該能夠超越 GetDataRawed() 程序，結果沒想到 Lua 的 stack 與 table operation 如此高效。或許在某些特定的條件與狀況下，GetDataRawedCached() 也能夠勝過 GetDataRawed() 程序吧。

不知道是否還有其他更好的 profiling 方法？

感謝你的迴響～ ：）</description>
		<content:encoded><![CDATA[<p>@Ricky:<br />
資料數量太少，主要是因為我懶得在 Excel 中產生出上萬筆資料。 XD</p>
<p>不過，在測試資料裡共有 5 張表格，每張表格裡有 300 筆資料，全部加起來總共有 1500 筆資料喔。雖然比起遊戲中真正使用的資料庫，測試資料的規模數量仍然非常少，但我想應該足以代表某種程度上的驗證成果了。</p>
<p>在進行效能測試之前，我原先也認為 GetDataRawedCached() 的平均效能應該能夠超越 GetDataRawed() 程序，結果沒想到 Lua 的 stack 與 table operation 如此高效。或許在某些特定的條件與狀況下，GetDataRawedCached() 也能夠勝過 GetDataRawed() 程序吧。</p>
<p>不知道是否還有其他更好的 profiling 方法？</p>
<p>感謝你的迴響～ ：）</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ricky</title>
		<link>http://blog.monkeypotion.net/gameprog/advanced/database-hot-loader-tuning-and-measuring-performance/comment-page-1#comment-842</link>
		<dc:creator>Ricky</dc:creator>
		<pubDate>Fri, 07 Nov 2008 10:05:33 +0000</pubDate>
		<guid isPermaLink="false">http://blog.monkeypotion.net/?p=582#comment-842</guid>
		<description>我會好奇資料的數量增加後效能分佈是如何，10 項資料是否太少哩?
如果有 profiling 結果那就更好了 :)

我「覺得」GetDataRawedCached() 的平均性能有可能會好過 GetDataRawed()。

優化技術是一門藝術;暨要實際的量測與實驗，也要根據理論與經驗加直覺去構思優化所使用的方法，從以減少試驗的次數。</description>
		<content:encoded><![CDATA[<p>我會好奇資料的數量增加後效能分佈是如何，10 項資料是否太少哩?<br />
如果有 profiling 結果那就更好了 :)</p>
<p>我「覺得」GetDataRawedCached() 的平均性能有可能會好過 GetDataRawed()。</p>
<p>優化技術是一門藝術;暨要實際的量測與實驗，也要根據理論與經驗加直覺去構思優化所使用的方法，從以減少試驗的次數。</p>
]]></content:encoded>
	</item>
</channel>
</rss>
