所以我最近在神经网络方面取得了一些突破,用NN AI做了几个游戏。为了训练,我使用frameRate(100000)来提升帧率。但是,通过println(frameRate)检查,我发现平均帧率约为270。删除所有显示器(绘制形状)会将其增加到大约300个。
我想让它更快,我注意到文档说明frameRate()只能达到你的处理器可以处理的最高值,但是我检查了任务管理器,我发现程序只使用了大约20%的CPU和90MB。我已经在首选项中将最大可用内存增加到4096MB,但这似乎没有什么不同。
所以我想我的问题是,我如何允许处理过程使用更多的CPU来实现更快的frameRate,或者除了简单地“优化我的代码”之外,是否有更好的选择,因为它已经相当优化的IMO (并不是说它不能再好了)。
发布于 2018-12-14 04:12:36
请记住,即使在帧率非常高的情况下,调用draw()的机制也有一些开销,如果您没有绘制任何内容,则不需要这些开销。您的计算机可能会根据您的图形设置限制帧速率。还要注意,println()语句本身非常慢,因此您不应该使用它来连续打印您的帧速率。
如果你没有画任何东西(或者你只画了一个框架),你可能只需要使用一个基本的循环而不是draw()函数。
取而代之的是,尝试这样做:
boolean running = true;
while(running){
// do your processing
if(done){
running = false;
}
}https://stackoverflow.com/questions/53768693
复制相似问题