cocos2dx在小米3上的掉帧问题

很奇怪,也没画多少东西,就1000个顶点左右,本来60帧掉到50。打了时间分析之后,更是迷惑了
drawScene函数只消耗了3到4毫秒
左右,就是说实际上每帧真正的执行时间根本没那么多,再到Cocos2dxRenderer.java中的onDrawFrame,把sleep去掉,这
个函数本身执行时间确实也就是4毫秒,也就是说,20毫秒的deltaTime根本就不是在onDrawFrame里面消耗的,那到底是在哪儿???其他
android手机上都没出现这个问题,以前CocoaChina有个帖子提到过glBufferSubData的问题,但现在我使用的cocos2dx
版本早就改了,没用glBufferSubData了,为了测试,我还把VBO_SIZE改小到1024甚至512,这个现象依然没什么变化。到底是哪里
的问题???有没有碰到过类似的问题的大牛来解释一下。。。

onDrawFrame函数如果只有4毫秒的话,那说明是系统回调过来本身很慢。这个我也不清楚为什么,是否小米3本身有什么设置需要开启?

又仔细打了时间,现在比较清楚了,显示40帧左右的时候,去掉onDrawFrame里的sleep,打印两个时间,一个是onDrawFrame自身的执行时间,一个是当前onDrawFrame和上一帧onDrawFrame的时间差(这个实际上就是用来算显示FPS的)。结果前者是8毫秒左右,后者是20毫秒左右。
onDrawFrame之后系统还会调用swap来真正执行与显卡的交互,难道这个时间大到了十几毫秒比onDrawFrame本身还多了?