Frage

Ich entwickle eine OpenGL-Anwendung und ich sehe einige seltsame Dinge passieren. Die Maschine, mit denen ich die Prüfung mit einer NVidia Quadro FX 4600 ausgestattet und es läuft RHEL WS 4.3 x86_64 (Kernel 2.6.9-34.ELsmp).

Ich habe mit einem Debugger durch die Anwendung trat und ich habe bemerkt, dass es auf OpenGL Anrufe hängt, die Informationen aus der OpenGL API erhalten: das heißt - glGetError, glIsEnabled etc. Jedes Mal, es auflegt, das System reagiert nicht mehr für 3-4 Sekunden.

Eine andere Sache, die interessant ist, ist, dass, wenn diese denselben Code auf RHEL 4.5 (Kernel 2.6.9-67.ELsmp) ausgeführt wird, ist es völlig in Ordnung läuft. Der gleiche Code läuft auch perfekt auf Windows XP. Alle Maschinen sind mit der exakt gleichen Hardware:

  • PNY NVIDIA Quadro FX4600 768MB PCI Express
  • Dual-Intel Xeon DP E5345 Quad Core 2,33 Hz
  • 4096 MB 667 MHz DDR2 Fully Buffered
  • Super Micro Micro X7DAL-E Intel 5000X Chipsatz Dual Xeon Motherboard
  • Enermax Liberty-620-Watt-Netzteil

Ich habe die neuesten 64-Bit-Treiber aktualisiert: Version 177.82, dem Datum der Veröffentlichung:. 12. November 2008 und das Ergebnis ist genau das gleiche

Hat jemand eine Ahnung, was das System verursachen könnte auf diesen OpenGL Anrufe hängen?

War es hilfreich?

Lösung

Es scheint, dass dies ein Problem mit weniger als perfekt NVidia-Treiber für Linux. Ein Upgrade auf eine neuere Kernel scheint zu helfen. Wenn ich gezwungen ist, diese datierten Kernel zu verwenden, gibt es einige Dinge, die ich versucht habe, die zu helfen scheinen.

die __GL_YIELD Umgebungsvariablen definieren vor "NOTHING" X zu beginnen scheint mit dieser älteren Kernel Stabilität zu erhöhen. http: //us.download.nvidia. com / XFree86 / Linux-x86_64 / 177.82 / README / Kapitel-11.html

Ich habe auch versucht Triple-Buffering und Flipping deaktivieren.

Ich habe auch festgestellt, dass diese Foren sehr hilfreich für Linux / NVidia Probleme. Sie einfach eine Suche nach "linux crash"

Andere Tipps

Unter Umständen können Sie tiefer graben, indem ein System Profiler wie Sysprof oder OProfile . Haben andere OpenGL-Anwendungen diese Anrufe zeigen ein ähnliches Verhalten mit?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top