Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 12:41

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 23 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Fr Mär 17, 2006 20:58 
Offline
DGL Member

Registriert: So Jul 17, 2005 12:59
Beiträge: 89
Also ich hab jetzt das Ganze nochmal auf 2 anderen PCs getestet. Dorst ist seltsamerweise die Framerate bei beiden Versionen meines Programms in etwa gleich..

Kann das irgendwie an meiner Dual Core CPU im Hauptrechner liegen? Wobei aber nur 50% Auslastung herrschen bei Betrieb des Programm, d.h. es wird eigentlich nur ein Kern genutzt..

Naja aber solange sich die Performance (zumindest dem FPS Counter zu Folge) nur hier verschlechtert hat, ist das kein Problem mehr ;)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 18, 2006 11:16 
Offline
DGL Member

Registriert: Do Apr 08, 2004 16:55
Beiträge: 516
Passi hat geschrieben:
Also ich hab jetzt das Ganze nochmal auf 2 anderen PCs getestet. Dorst ist seltsamerweise die Framerate bei beiden Versionen meines Programms in etwa gleich..

Kann das irgendwie an meiner Dual Core CPU im Hauptrechner liegen? Wobei aber nur 50% Auslastung herrschen bei Betrieb des Programm, d.h. es wird eigentlich nur ein Kern genutzt..

Naja aber solange sich die Performance (zumindest dem FPS Counter zu Folge) nur hier verschlechtert hat, ist das kein Problem mehr ;)


Dual Core verursacht IMHO tatsächlich bei einigen Programmen Probleme, bei deinem kann ich es mir allerdings nicht vorstellen warum es da Probleme geben sollte.

_________________
Shareholder und Leitender Entwickler bei Pipedream-Games.

Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 18, 2006 11:41 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
Unwürdige ... :) Wieso haben alle ne DualCore, die nicht wissen, wie sie funktionieren? Eine einzelner Prozess profitiert nicht im geringsten von einem zweiten Kern. Auch erhöht man mit einem DualCore die Bandbreite und nicht die Leistung. Das ganze macht Spaß, wenn ich hier einige Serverdienste laufen habe und parallel Eclipse starte, aber nicht, wenn ich Doom3 starte (außer es gibt da inzwischen spezielle Versionen). Von daher würde ich alle Gedankengänge in diese Richtung einstellen.

Als Performance-Problem würde ich das ganze auch noch nicht ansehen. Es ist normal, dass die 5000 FPS, die man bei einem Dreieck hat, sehr schnell in den "Keller" runtergeht. Bevor es dann an die kritischen Grenzen kommt, vergeht meist dann doch aber noch eine etwas längere Zeit. Ansonsten sind es auch oft Kleinigkeiten, die viel Performance kosten. Ständige verwenden von glBegin/glEnd, stäniges wechseln der Textur etc. Also laßt den armen Core in Frieden ;-)

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 18, 2006 19:07 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
:D
Kann da Flow nur zustimmen ;) Ich liebäugle selber mit der Anschaffung eines DualCore-Rechners... Bisher hat mich davon allerdings der Preis abgehalten ;)
Jedenfalls hat DualCore damit nichts zu tun und macht sich tatsächlich nur dann bemerkbar, wenn eine Anwendung mehr als einen Thread benutzt. Ähnlich wie dieser Hype um Hyperthreading (!). Ok, da steckt das Wort Hype schon drin ;).
Trotzdem gilt irgendwie bei vielen nach wie vor die Devise, zwei CPUs sind doppelt so schnell wie eine.

Richtig bezahlt machen sich DualCore-Rechner, wenn bei einem Spiel z.B. die Physik-Engine in einen eigenen Thread kommt, die Spielelogik mitsamst KI in einen Thread kommt und die Grafikrelevanten Sachen auf der GPU berechnet werden. Dann hat man mit DualCore tatsächlich 3 Prozessor-Units, die gleichzeitig und damit parallel arbeiten können. Damit lassen sich recht leicht unglaublich hohe Performancegewinne erzielen. Vorrausgesetzt, man kann damit umgehen ;)

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Mär 19, 2006 21:12 
Offline
DGL Member

Registriert: So Jul 17, 2005 12:59
Beiträge: 89
Das ist mir schon klar das ein Dual Core Prozzi bei Anwendungen, die keine Dual Core Optimierung mit sich bringen nichts bringt.

Ich meinte ja nur: Der Performance Verlust (bzw. der Abfall der Framerate) von ca. 50% entsteht ja nur bei meinem Dual Core Rechner. Am 2. PC, am Laptop und auf dem PC eines Freundes haben beide Versionen der Anwendung die Selben FPS. Und da keiner dieser 3 Rechner einen Dual Core Prozzi besitzt, ist die Vermutung ja nahre, das es damit etwas zu tun hat. Hab ja nicht gesagt, dass es daran liegt, dass 2 Kerne benutzt werden :P

Naja wie dem auch sei, ihr habt schon richtig gesagt, ich brauche mir da keine Gedanken drum machen.. so wie es aussieht werden maximal 1000 Partikel gleichzeitig plus ein paar vereinzelte Quads gezeichnet, und das läuft sogar auf nem 1Ghz mit 32Mb Geforce2 mit 100FPS. Also auf jeden Fall ausreichend.

Danke für eure Hilfe,

Grüße
Passi


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 25, 2006 17:44 
Offline
DGL Member

Registriert: So Jul 17, 2005 12:59
Beiträge: 89
Hi nochmal,


das Problem ist leider nicht behoben :(

Das Programm hängt sich nach wie vor ab und zu einfach auf. Weitere Tests haben ergeben, dass aber alles ausgeführt wird. Also z.B. auf Tastaturtastendrücke etc. wird reagiert. Es muss also z.B. am SwapPuffer liegen oder so etwas, dass eben den Fensterinhalt aktualisiert...

Ich hoffe ihr habt noch ein paar Ideen!

Grüße
Passi


Edit:

Nächste Erkenntnis zu meinem anderen Problem (langsam/schnell):

Code:
  1.  
  2. QueryPerformanceCounter(QPCStart);
  3. glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  4.  
  5.      Game.Main();
  6.  
  7. SwapBuffers(DC);
  8.  
  9. QueryPerformanceCounter(QPCEnd);
  10. TimeFactor := ((QPCEnd-QPCStart) / QPCFreq) * 70;
  11.  


<- alles läuft normal schnell.

Code:
  1.  
  2. QueryPerformanceCounter(QPCStart);
  3. glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  4.  
  5.      Game.Main();
  6.  
  7. QueryPerformanceCounter(QPCEnd);
  8. TimeFactor := ((QPCEnd-QPCStart) / QPCFreq) * 70;
  9.  
  10. SwapBuffers(DC);
  11.  


<- alles läuft laaaangsam.. !?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mär 25, 2006 18:20 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Hmmm SwapBuffers scheint probleme zu machen... Ich kenn mich mit den Internas nicht aus, aber eventuell gibts probleme mit deinem DC. Vielleicht ein falsches Pixelformat. Keine Ahnung....

Aber wieso das schwankt ist mir unklar...

Vielleicht wärs günstig wenn du dein Projekt mal hier als Anhang veröffentlichst. Falls du streng geheime Sachen drinnen hast, kannst du die ja vorher rausräumen.

Das wäre ganz neben bei auch noch ne Idee. Wirf alles raus aus deinem Programm was dich an den Teufel geb... sorry... falscher film .... alles raus bis du nur noch das Skelett hast. Wenns dann immer noch nicht geht, dann wirst du wohl ums hochladen nicht drum rum kommen.

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Mär 28, 2006 20:57 
Offline
DGL Member

Registriert: So Jul 17, 2005 12:59
Beiträge: 89
Hi,

also ne Vorgängerversion habe ich in meinem ersten Post ja schon verlinkt.

Hier mal die jetzige:

http://www.mathrix.net/Pocus.rar

Achtung: Form1.Enabled=false, denn dann habe ich das Problem mit Maus drüber=langsam (siehe anderer Thread) nicht mehr.

Wie gesagt, diese Exe hängt sich in unbestimmten Abständen auf, reagiert aber auf Tastenbefehle etc. glgetError liefert zu jedem Zeitpunkt (auch nach nem Hänger) 0 zurück.

Wenn Ihr euch das schon anschaut, vllt. könnt ihr mir verraten wo der Fehler liegt, wenn man mit der Spielfigur ganz nach unten hüpft, da wackelt sie dann hoch und runter -.-

Danke + Grüße
Passi


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 23 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 14 Queries | GZIP : On ]