![]() |
Delphi-Prog+Multiprozessor+Win2003=ehlend lahm?!
Servus...
Wir programmieren auf Arbeit mit Delphi und Interbase/Firebird... Jetzt haben wir eines unserer Programme auf einem Terminalserver (Win2003) laufen, der mit 2 Pentium Prozessoren + HT und 4GB Ram ausgestattet ist. Alles noch schön und gut, aber das Programm läuft auf dem Server bei weitem langsamer als auf einem Single-PC mit nur einem Prozessor... Ein umstellen der Einstellungen im Firebird/Interbase auf Multiprozessorbetrieb brachte auch keine Leistungssteigerung. Direkt alles in Threads verlagert bzw. in extra Prozessen ist meines wissens nichts in dem Programm...(Ich habs ja net geschrieben ^^) Wollt nur mal fragen ob jemand schonmal so etwas erlebt hat bzw. was man tun könnte um das Programm zu beschleunigen... |
Re: Delphi-Prog+Multiprozessor+Win2003=ehlend lahm?!
Tja, die Multiprocessor Architektur nützt Dir IMHO wenig, wenn das Programm nur einen einzigen Thread verwendet... Wenn dann noch der Server ein wenig mehr Auslastung hat, als ein normaler Arbeitzplatzrechner, dann wirds eben langsamer :?
|
Re: Delphi-Prog+Multiprozessor+Win2003=ehlend lahm?!
Der FB-SuperServer ist nicht MP-fähig. Du kannst ihn aber an einen bestimmten Prozessor binden. Der FB-ClassicServer ist zwar MP-fähig dank der seit Win200 fehlenden POSIX-unterstützung seitens Windows aber extrem inperformant.
IB 7.5 ist meines wissens mp-fahig. Firebird wird es mit FB 3.0 oder VULCAN. |
Re: Delphi-Prog+Multiprozessor+Win2003=ehlend lahm?!
Das mit der MP-Unterstützung von Firebird/Interbase kann man ja irgendwo in einer .conf Datei glaub ich einstellen... Hat aber auch nix gebracht und ist ja auch egal... In erster Linie geht es ja um das Programm an sich.
Ab Win2003 dürfen ja Prozesse auch keine 100% CPU mehr bekommen, sondern maximal 50%. Würde es denn wirklich so viel schneller gehen, wenn man zum Bsp. eine Datenbankerstellung in einen eigenen Thread auslagert? Das Programm soll ja während dieser Zeit eh nicht genutzt werden und ein aufteilen in versch. Threads ist ja bei so einer Sache auch net unbedingt sinnvoll? (Und mir wurde mal gesagt, dass SQL-Zugriffe (Interbase-Komponenten) nicht Thread-Sicher sind?!) |
Re: Delphi-Prog+Multiprozessor+Win2003=ehlend lahm?!
Hmm, schade eigentlich... Hat denn sonst niemand irgendwelche Erfahrungen in dieser Richtung gemacht? Oder werden in den Firmen noch nicht so sehr MP-Rechner mit Delphi Programmen verwendet...
Vielleicht findet sich ja noch der Ein oder Andere, der eine Aussage dazu machen kann... :-) |
Re: Delphi-Prog+Multiprozessor+Win2003=ehlend lahm?!
Zitat:
Du hast 2 Prozessoren, ist einer voll ausgelastet ergibt das 50% Systemauslastung... :roll: Ein Terminalserver ist schon mit seinen Sessions genug ausgelastet, ein so CPU intensives DBMS wie FB/IB darauf zu fahren macht ihn sicherlich nicht schneller. ;) Packe die DB auf eine 2. Maschine, das sollte für den Anfang schonmal einiges bringen. Zitat:
Du hast übrigens nicht gesagt wieviele gleichzeitige Terminal sessions dort max. auftreten. 2 CPUs können bei einer zu aufwendigen App zuwenig sein, wenn 10 Leute drauf arbeiten. ;) |
Re: Delphi-Prog+Multiprozessor+Win2003=ehlend lahm?!
Das seh ich doch mal als eine Erklärung an, die man auch mal jemandem unter die Nase halten kann... ^^
Das Mit den 50% sagte einer unserer Techniker (der hat aber Urlaub, sonst hät ich ihn gefragt wo er es her hat), entschuldige meine Unwissenheit. ^^ Aber auch wenn man sich die Auslastung aller 2 (mit HT 4) CPU's im Taskmanager ansieht steigt der Wert (wenn nur das eine Programm läuft) nie über 50% pro CPU... Der Rest macht natürlich Sinn ^^ Also erstmal Thx für die Antwort(en) ;-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz