2010-01-21 189 views
2

我簡化了我的問題,以這個例子:問題初始化過剩

#include <GL/glut.h> 

int main(int argc, char** argv) 
{ 
    glutInit(&argc, argv); 

    glutInitDisplayMode (GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); 
    glutInitWindowSize (600, 600); 
    glutInitWindowPosition(0, 0); 

    int win = glutCreateWindow("Recon"); 

    return 0; 
} 

當執行glutCreateWindow,需時約1分鐘,屏幕閃爍幾次。

這是可笑的漫長。這不可能是正常的。

環境:

  • Fedora 10的
  • 雙NVIDIA GTX280卡驅動3個顯示器。
  • NVIDIA驅動190.53版CUDA 2.3安裝
  • gcc版本4.3.2 20081105(紅帽4.3.2-7)(GCC)

任何想法可能是什麼問題?

編輯:我沒有顯示功能,因爲我的最終目標是創建一個渲染上下文,以便我可以從一些CUDA代碼創建一個像素緩衝區對象(目前它不會顯示它的輸出。也嘗試創建一個與一系列glx調用的上下文,當gkxMakeCurrent被調用時發生相同的延遲和閃爍。

回答

1

您是否有顯示功能? 我不確定這是否有幫助,但可能會放入顯示功能,你清除緩衝區可能有幫助嗎?

eg glutDisplayFunc(myDisplay);

void myDisplay() 
{ 
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // clear the screen 
    glutSwapBuffers(); 
} 

你使用什麼編譯器?並且,您是否研究了與Fedora 10和openGL相關的任何可能的性能問題(我現在正在研究第二個問題)。

編輯:在Fedora 10中確實有一些性能問題的故事性故事 HereHere。第二個似乎至少描述你的一個症狀。你能夠在另一個操作系統上嘗試你的代碼嗎?

+0

謝謝。看到我的編輯一些答案。我需要最終在Debian 5上運行它,所以我現在可以嘗試。那麼,明天。 :) – 2010-01-21 03:50:24

+0

接受 - 在Debian 5中沒有看到問題。 – 2010-01-23 00:02:50

+0

操作系統出現了什麼奇怪的問題。我不知道是什麼原因造成的。 – AndyG 2010-01-23 01:30:50