QBasicTimer干扰cuda

时间:2013-12-16 12:41:44

标签: c++ qt opengl cuda

我的程序中有CUDA的性能问题。同一任务所需的时间(对齐3D点的云)并不稳定,有时可能高出30倍。

我使用Qt作为主界面,用我的worker类初始化一个线程。本课程的目的是在我的数据上启动cuda计算,并发送将由GUI捕获的Qt信号,以更新OpenGl小部件的显示。

我通过在OpenGL小部件中删除QBasicTimer解决了我的性能问题,它的用法如下:

void SWGLCloudWidget::initializeGL()
{
    // ...
    m_oTimer->start(5, this);
}

它完全没用,但我忘了在重构后删除它。 在Qt文档中,它说:

  

QBasicTimer类为对象提供计时器事件。

     

这是Qt内部使用的快速,轻量级和低级别的类。如果您想在>应用程序中使用计时器,我们建议使用更高级别的QTimer类而不是此类。请注意,此计时器是一个重复计时器,它将发送后续计时器事件>除非调用stop()函数。

我想知道这个低级别的电话会如何导致CUDA如此混乱,只是为了我的好奇心。

0 个答案:

没有答案