经过了百无聊赖的8月,9月初公司终于给了我一个新任务——找出现在正在开发的游戏中的内存峰值的出现位置,然后想办法解决一下。
上司的意思是,这是个体力活,你在源代码各处看看都哪里在读取2D3D资源文件,数数看大概用了多少内存,可我当时听到这个任务的时候心里想的是“这个活儿NB啊,我要做内存分布追踪工具!”
不是我好高骛远,这里确实是这个道理。你看,我们副部长搞那个精简分散内存开支的活儿已经不是一天两天了,他都搞不定,我们下面的小喽罗想凭运气找出这个内存瓶颈就更困难了,何况我还不了解各处是以什么习惯在申请和释放内存(比如说,每次用之前申请用完释放,还是进入界面前一口气都申请了,之后就不管了)。
反正就是这么回事。开工吧。
先在网上搜了一圈,大概看了一下内存用量追踪的做法,然后锁定了这篇文章 《Monitoring Your PC’s Memory Usage For Game Development》。不仅是内存使用量侦测,而且正好是应用于游戏开发,内容难易度也在我可以理解和实现的范畴之内,开心~
『当初我庆幸自己一下就找到了实用教程的时候,还没有想到之后的路会这么的难走……』