Seit wann ist VB schneller als C++?



  • VB übergibt standardmäßig byRef. Das könnte also tatsächlich schon der erste Grund sein.



  • Hallo!

    Ja, ich weiß dass VB standardmäßig byref übergibt. Das hat hier aber sicher nichts mit dem Problem zu tun, in meinem kleinen Testprogramm übergebe ich nämlich gar nichts. Ich rufe in einer GameLoop einfach immer nur die gleiche parameterlose Funktion auf, die die Offscreen-Surface auf den BackBuffer kopiert, und diesen dann auf die Primary Surface flippt. Genauso mache ich es auch in VB.
    Der Initialisierungscode spielt keine Rolle. Solange die Flags gleich eingestellt sind dürfe es keinen Unterschied geben, denn der Init-Code wird eh nur ein Mal ausgeführt. Und der Code in der GameLoop ist so kurz, dass ich mir nicht vorstellen kann dass ich dort so viel Rechenzeit verschwende.

    mfg


  • Mod

    wenn das wenig ist, könntest du dann beide sources hier posten? vielleicht könnten wir ja den kleinen pikanten unterschied finden oder uns überzeugen dass VB schneller ist 😉

    rapso->greets();



  • Also Jungs, 500FPS der eine 200FPS der andere. Auch wenn er den C/C++ Code optimieren sollte glaube ich nicht das danach C/C++ 1500FPS schaft. Was er ja müsste. Weil er soll ja sehr viel schneller sein als VB und nicht gleich oder etwas schneller.

    PS WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN



  • Christoph Redl, hast du vielleicht das C++ Ding als Debug-Version compiliert und ausgeführt?



  • Davon gehe ich sowieso schon aus
    -.-

    Debug-Build und Debug-Run (oder Einzelschritt 🤡 ).



  • hahaha 🙂



  • HANZO schrieb:

    Also Jungs, 500FPS der eine 200FPS der andere. Auch wenn er den C/C++ Code optimieren sollte glaube ich nicht das danach C/C++ 1500FPS schaft. Was er ja müsste. Weil er soll ja sehr viel schneller sein als VB und nicht gleich oder etwas schneller.

    PS WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN WIR WOLLEN CODE SEHEN WIR WOLLWN CODE SEHEN

    In einem Post so viele Rechtschreibfehler... 🙄

    😉 🤡



  • Haben die in der ct dazu schon mal was gesagt, zu dem versauten Test?


  • Mod

    [quote="Sgt. Nukem"]

    HANZO schrieb:

    In einem Post so viele Rechtschreibfehler... 🙄

    😉 🤡

    da haste den falsch'n zittiert *fg*

    rapso->greets();



  • Du jetzt auch 😃

    btw wir warten immer noch auf den Source 🙄



  • Also, wenn jemand die Bin´s des Directx9 SDK´s startet(Demo´s und Tutorial´s), so wird er merken das in den Anwendungen die in C#, VB und C++ vorhanden sind sich immer das gleiche herausstellt! Visual Basic ist mit c++ gleich auf und c# liegt immer dahinter.

    Warum?



  • Wieviel hat das VB denn überhaupt damit zu tun ?
    Kann ich mir das nicht so vorstellen das die Hauptarbeit von seitens der DX Api gemacht wird ?



  • Ja, das denke ich auch! Aber warum sind dann bei einigen Applikationen unterschiede von 5 - 300 Frames festzustellen?

    Gruß Frank



  • frank2 schrieb:

    Also, wenn jemand die Bin´s des Directx9 SDK´s startet(Demo´s und Tutorial´s), so wird er merken das in den Anwendungen die in C#, VB und C++ vorhanden sind sich immer das gleiche herausstellt! Visual Basic ist mit c++ gleich auf und c# liegt immer dahinter.

    Warum?

    Was beweist das C/C++ keine Zukunft hat. Das war einmal das C/C++ das schnellste war (ausser asm). Leute, es sollte euch klar werden das nur das Ergebniss zählt. Und nicht mit welcher Sprache oder API dieses Ziel erreicht wurde.
    Wer C/C++ kann sollte dabei bleiben. Wer es noch lernen will sollte sich frage ob es nicht Alternativen gibt.



  • Wer es noch lernen will sollte sich frage ob es nicht Alternativen gibt.

    Aber welche Alternativen hat man?



  • Hm, so pauschal zu sagen C++ sei langsamer .. WEiß nicht.

    Und das ne Interpretersprache schneller sein soll ? WEiß nich.

    Ich denke es hat hier viel mit der Programmierung u. Compiler zu tun.
    Wie will man bitte sprachen vergleichen die überwiegend API Aufrufe verwenden ?

    Und dann die frage:

    In was ist denn das DX9 geschrieben ? VB ?



  • Knuddlbaer schrieb:

    Und dann die frage:

    In was ist denn das DX9 geschrieben ? VB ?

    Wenn man darüber nachdenkt was DX überhaupt macht sollte man schnell eine Antwort finden. DX bringt die möglichkeit über High Level Sprachen mit der Grafikkarte zu kommunizieren ohne Abhängig zu sein was es für eine ist. Also wird es sicherlich Assambler oder ähnliches sein. Die Matrix und Vektorrutinen sind auch in Assambler für die verschiedenen CPUs in optimierter Form.



  • 🤡

    Ich denke also das man nicht die geschwindigkeit einer Sprache anhand der Ansteuerung einer API messen kann. (@VBJAVAMAN)

    Die Frage wieso VB eine höhere Framerate nach sich zieht wird denke ich erst nach Untersuchung der Quelltexte möglich sein.



  • Es ist wohl definitiv kein Problem in C++ oder C Quellcode zu schreiben, der
    verdammt langsam ist, jdm der gut VB kann und die feinheiten zum optimieren
    (soll auch Leute geben, die mit VB arbeiten und trotzdem Ahnung haben) kennt,
    der kann sicher da was rausholen und im günstigen Fall schneller als schlechter
    C/C++-Code sein.


Anmelden zum Antworten