GUI Performance unter Windows 11

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

Moderator: Moderatoren

Antworten
mmo
Rookie
Rookie
Beiträge: 8
Registriert: Fr, 23. Sep 2022 15:29
Hat sich bedankt: 1 Mal
Danksagung erhalten: 2 Mal

GUI Performance unter Windows 11

Beitrag von mmo »

Hallo miteinander. Hab zu diesem Thema die Foren durchsucht und nix finden können.
Ich wundere mich, dass es dazu kein Thema gibt (oder ich hab es überlesen).

Wir haben mit Windows 11 PCs erhebliche Performance Probleme bei unseren Kunden feststellen können.
Unsere XBase Programme verhalten sich sehr träge auf WIN11 Rechner. Im Vergleich zu Windows 10 Rechner öffnen sich die XBase Dialoge langsamer (2-3x so langsam?).
Aus der subjektiven Wahrnehmung heraus haben wir ein kleines Tool geschrieben um das zu bestätigen, dass einfach nur einen XBase-Dialog öffnet, darauf 300 XBase-Parts erstellt, sie ausrichtet und anzeigt. Die Zeit wird gemessen und auf WIN10 ist es meist zwischen 0,3 und 0,7 Sekunden.
Auf WIN11 ist es zwischen 1,3 bis zu 3,5 Sekunden.
Wir haben auch festgestellt, dass nach einem WIN11 Neustart die Dialoge sich schneller öffnen und im laufenden Betrieb die Performance einbricht.

Den Sachverhalt und das kleine Tool haben wir an den Alaska-Support geschickt und sie haben dieses Verhalten bestätigt. Hier der Auszug:
Hallo,
das von Ihnen geschilderte Problem ist bekannt und der Grund dafür, daß wir im Augenblick ebenfalls keine uneingeschränkte Empfehlung für den produktiven Einsatz von Windows 11 geben können.
Unser Wissensstand bezüglicher der Problematik ist folgender:
- Das Problem scheint hauptsächlich auf Maschinen aufzutreten, die Windows 11 als Update erhalten haben. Neuinstallationen
von Windows 11 sind scheinbar nicht betroffen.
- Es scheint sich um ein Problem zu handeln, das sich über die Zeit im Betriebssystem manifestiert. Frisch gebootete Maschinen
verhalten sich in der Regel performant, bis es nach und nach zu einer wiederholten Performancedegradierung kommt.
- Das Problem ist nicht Xbase++-spezifisch, sondern tritt auch mit anderen Anwendungen auf.
- Microsoft hat zwischenzeitlich Performanceprobleme eingeräumt und eine Korrektur für das nächste Feature Update angekündigt.
Unsere Empfehlung lautet dementsprechend, dieses Update abzuwarten und das Verhalten der Anwendung neu zu bewerten.
Eine Abhilfe für das Problem ist bislang nicht bekannt. Abhängigkeiten zum Windows Defender wurden wiederholt vermutet und getestet, ließen sich aber leider nicht reproduzierbar belegen. Einige wenige Maschinen schienen auf Änderungen an dieser Stelle anzusprechen, bei anderen hatte dies allerdings keine Auswirkung. Auch das Studium der im Netz zu findenden "Optimierungen" (Stichwort zB. msedgewebview2.exe-Prozesse) führten zu keiner zufriedenstellenden Lösung.
Aus diesem Grunde empfehlen wir aktuell wie gesagt ganz einfach: warten!
Ich hoffe, dies hilft Ihnen weiter.
with regards/mit besten Grüßen
Support


Wir haben die Info mit der Neuinstallation von Windows 11 getestet und tatsächlich arbeitet es frisch und neu installiert performanter als auf ein auf WIN11 aktualisiertes OS.

Jetzt hoffte ich natürlich, dass mit dem WIN-Update 22H2 das Performance Problem sich verbessert, aber leider Nein.
Könnt ihr das auch bestätigen oder ist das alles schon bekannt bei euch?
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: GUI Performance unter Windows 11

Beitrag von Tom »

Ich nutze das 22H2 auf zwei Maschinen und habe den Eindruck, dass es dadurch besser geworden ist, aber Messungen konnte ich noch nicht durchführen.
Herzlich,
Tom
mmo
Rookie
Rookie
Beiträge: 8
Registriert: Fr, 23. Sep 2022 15:29
Hat sich bedankt: 1 Mal
Danksagung erhalten: 2 Mal

Re: GUI Performance unter Windows 11

Beitrag von mmo »

Hallo Tom, d.h. du kennst die Problematik?
Die Zeiten sind mit dem Update nicht besser geworden. Hab heute den ganzen Tag gearbeitet und grad nochmal den GUI-Test gestartet.
2.61 bis 3.4 Sekunden.
Wenn ich Windows neu starte liegt er bei ca. 1.3 Sekunden.
Bei WIN10 wie gesagt bei 0.3 bis 0.5.
Habe auch eine WIN10 Partition auf den selben Rechner und kann das immer gegentesten.

Wie geht ihr mit euren Kunden damit um?
Wir haben unseren Kunden mitgeteilt, dass wir WIN11 noch nicht freigegeben haben für unser Programm.
Jedoch rebellieren sie langsam, weil jeder neue PC mittlerweile mit WIN11 ausgeliefert wird und sie sich nachträglich eine WIN10 Lizenz holen müssen.
Gruß
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: GUI Performance unter Windows 11

Beitrag von AUGE_OHR »

hi,

von welcher Xbase++ Version sprichst du :?:
schon mal unter 32 Bit OS getestet :-"

ich habe Windows 10 32 Bit, 64 Bit und Windows 11 64 Bit auf meinem PC installiert (Triple-Boot)
das "Problem" liegt weniger an Windows 11 als vielmehr an 64 Bit OS für Xbase++ Apps

meine 1000 SLE Xbase++ laufen unter 32 Bit OS 3 x schneller als unter 64 Bit OS
dabei sind es die "ersten Sekunden" wo "nichts" passiert bevor er zu "malen" beginnt

p.s. alles wird mit o:hide() aufgebaut

---

ich wüsste gerne welche "anderen" Produkte das Problem mit Windows 11 haben oder ob es nur Propaganda von Alaska ist

meine harbour Apps laufen ebenfalls langsamer unter 64 Bit, aber 6-8 Mal schneller als unter Xbase++, und sind kaum langsamer unter Windows 11

hier die Ergebnisse
1000 SLE / TEXTBOX

Windows 32 Bit 10.0.19044.2075 2.21 - 2.31 Sec
Windows 64 Bit 10.0.19044.2075 6.89 - 7.01 Sec
Windows 64 Bit 10.0.22000.1042 > 10 Sec

Windows 32 Bit 10.0.19044.2075 0.39 - 0.41 Sec
Windows 64 Bit 10.0.19044.2075 1.03 - 1.06 Sec
Windows 64 Bit 10.0.22000.1042 1.06 - 1.14 Sec
hier mein Test "Dual" CODE

Code: Alles auswählen

#IFDEF __XPP__
#ELSE
#include "HMG.CH"
#ENDIF

PROCEDURE MAIN
LOCAL i, nStartCreate, nStopCreate , nStartShow , nStopshow , nStartDestroy , nStopdestroy
LOCAL cSLE

#IFDEF __XPP__
LOCAL nEvent, mp1, mp2, oXbp
LOCAL oDlg1

   oDlg1 := XbpDialog():new(AppDesktop() ,, {0,0}, {1024,768} )
   oDlg1:title := "1000 SLE Test"
   oDlg1:taskList := .T.
   oDlg1:create()
   oDlg1:Hide()
   CenterControl(oDlg1)

   nStartCreate := SECONDS()
   FOR i := 1 TO 1000
      oXbp := XbpSLE():new(oDlg1:DrawingArea, ,{i,i/4*3}, {100,30})
      oXbp:create()
   NEXT
   nStopCreate := SECONDS()
   nStartshow := seconds()
   oDlg1:Show()
   nStopShow := seconds()
   nStartDestroy := SECONDS()
   oDlg1:Destroy()
   nStopDestroy := SECONDS()
   Msgbox("Create: "+STR(nStopCreate-nStartCreate,9,2)+" Sec."+chr(13)+chr(10)+"Show: "+STR(nStopshow-nStartshow,9,2)+" Sec."+chr(13)+chr(10)+"Destroy: "+STR(nStopdestroy-nStartDestroy,9,2)+" Sec.")

RETURN

#ELSE

   nStartshow := seconds()
   DEFINE WINDOW InkMain ;
         AT 0, 0 ;
         WIDTH 1024 ;
         HEIGHT 768 ;
         NOSHOW ;
         ON INIT DoInit(nStartCreate, nStopCreate , nStartShow , nStopshow , nStartDestroy , nStopdestroy) ;
         TITLE "1000 TEXTBOX Test"

      nStartCreate := SECONDS()
      FOR i := 1 TO 1000
         cSLE := "TEXT_"+STRZERO(i,4)

         DEFINE TEXTBOX &cSLE
            ROW i
            COL i/4*3
            WIDTH 100
            HEIGHT 30
            FONTNAME "Arial"
            FONTSIZE 10
            TABSTOP .T.
            VISIBLE .T.
            VALUE ""
         END TEXTBOX
      NEXT
      nStopCreate := SECONDS()

   END WINDOW

   InkMain.Show()
   nStopShow := seconds()

   nStartDestroy := SECONDS()
   nStopDestroy := SECONDS()

   CENTER WINDOW InkMain
   ACTIVATE WINDOW InkMain

RETURN

PROCEDURE DoInit(nStartCreate, nStopCreate , nStartShow , nStopshow , nStartDestroy , nStopdestroy)
   MsgInfo("Create: "+STR(nStopCreate-nStartCreate,9,2)+" Sec."+chr(13)+chr(10)+"Show: "+STR(nStopshow-nStartshow,9,2)+" Sec."+chr(13)+chr(10)+"Destroy: "+STR(nStopdestroy-nStartDestroy,9,2)+" Sec.")
RETURN

#ENDIF
gruss by OHR
Jimmy
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: GUI Performance unter Windows 11

Beitrag von Jan »

AUGE_OHR hat geschrieben: Sa, 24. Sep 2022 5:14schon mal unter 32 Bit OS getestet :-"
Ich wußte gar nicht, das es Windows 11 auch als 32 Bit gibt. Ich hab eigentlich gelesen das es das überhaupt nicht gibt.

Immerhin ght es ja hier um ein Problem das ausdrücklich nur unter WIndows 11 auftritt. So schrieb Alaska das in seinem Newsletter, und so beschrieb auch der Threaderöffner das.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2823
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 95 Mal
Danksagung erhalten: 13 Mal

Re: GUI Performance unter Windows 11

Beitrag von georg »

Guten Morgen,


beim Stöbern fand ich gerade diesen Artikel: https://www.heise.de/news/Windows-11-20 ... 74637.html

Könnte in Richtung gehen?
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: GUI Performance unter Windows 11

Beitrag von AUGE_OHR »

hi,
georg hat geschrieben: So, 25. Sep 2022 9:08 beim Stöbern fand ich gerade diesen Artikel: https://www.heise.de/news/Windows-11-20 ... 74637.html
Könnte in Richtung gehen?
Wie im Heise Text geschrieben wurde hat Nivdea die Experience-Software als Ursache identifiziert welche eine Debug Function ausgelöst hat.

das eine Xbase++ Function ähnliches bewirkt wäre möglich aber ich halte es für unwahrscheinlich

---

richtig ist das Windows 11 nun WDDM v3.0 nutzt und damit "ältere" Grafikkarten evtl. keine "neuen" Treiber bekommen.

das ältere App auf neuen OS "langsamer" laufen ist seit Windows v1.0 der Fall
nur wenn man neue Hardware verwendet, mit entsprechenden Treibern, hält man mit der Entwicklung stand

dabei hilft neue Hardware nur bedingt wenn die App nur 1 x CPU nutzt.
auch helfen keine Tricks von Alaska die Xbase++ mit "erhöhter" Priorität laufen zu lassen ... das funktioniert nicht mehr

---

Alaska hat das Problem auf Microsoft geschoben ...

nun ist das Windows 11 H2 Updaten seit letzte Woche erhältlich
es würde mich interessieren ob Xbase++ v2.x nun damit schneller läuft oder es nur Propaganda war

p.s. die v1.9.355 laufen nicht schneller mit der 22621
gruss by OHR
Jimmy
mmo
Rookie
Rookie
Beiträge: 8
Registriert: Fr, 23. Sep 2022 15:29
Hat sich bedankt: 1 Mal
Danksagung erhalten: 2 Mal

Re: GUI Performance unter Windows 11

Beitrag von mmo »

Hallo miteinander,
unsere Kunden und wir nutzen meines Wissens nur 64 Bit OS.
Auch ist diese Performance-Schwäche reproduzierbar.
Dieses Performance.prg ist an Alaska geschickt worden mit den entsprechende Ergebnissen in der Performance.log.
Mein Entwickler Rechner ist von Dell und ist ein Jahr alt und hat nur eine Intel Onbard Grafikkarte.
Am selben Rechner auf unterschiedlichen Partitionen mit WIN11 und WIN10 getestet.

Auch konnten wir die Performance-Schwäche nicht auf frisch installierten WIN11 feststellen, sondern nur auf "überinstallierten" WIN11.
performance.log
Performance Log
(3.49 KiB) 90-mal heruntergeladen
Performance.prg
Performance PRG
(2.65 KiB) 97-mal heruntergeladen
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: GUI Performance unter Windows 11

Beitrag von AUGE_OHR »

hi,
mmo hat geschrieben: Mo, 26. Sep 2022 15:26 Auch konnten wir die Performance-Schwäche nicht auf frisch installierten WIN11 feststellen, sondern nur auf "überinstallierten" WIN11.performance.logPerformance.prg
interessant ...

bei einem Upgrade wird Online geprüft ob die Hardware den Anforderungen entspricht, bei eine Neuinstallation vom lokalen Setup

nun werden bei einem Upgrade IMHO die "funktionierenden" Treiber übernommen ...
bei Windows 11 wurde ja z.b. WDDM 3.0 eingeführt aber Windows 10 hat WDDM 2.0 genutzt.

der Treiber von der Grafik Karte kommt aber von den Grafik-Chip Hersteller und Microsoft hat nur die "Basic" Treiber.
bei den Treiber von der Grafik Karte sollte also bei Hersteller nach einem Update nachsehe ob es für Windows 11 neue Treiber gibt

aber im Grunde gilt es für alle Treiber ...

---

Idee : man kann die "alten" Treiber sichern mit

Code: Alles auswählen

DISM /online /export-driver /destination:x:\DRIVER_OLD
nach dem Update (oder von der frisch installieren Windows 11) könnte man wieder die aktuellen Treiber sichern

Code: Alles auswählen

DISM /online /export-driver /destination:x:\DRIVER_NEW
und nun die Treiber in den Verzeichnissen vergleichen welche Unterschiede gibt.

wenn das Update "andere" Treiber haben sollte kann man versuchen beim "kaputten" PC "die" Treiber zu laden

p.s. die Ordner x:\DRIVER_*** VORHER anlegen z.b. auf USB-Stick
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: GUI Performance unter Windows 11

Beitrag von AUGE_OHR »

hi,

ich habe nun die Treiber Verzeichnisse verglichen
Win_Driver.PNG
Win_Driver.PNG (74.05 KiB) 3316 mal betrachtet
wie ich sagte werden bei einem Upgrade die "alten" Treiber übernommen ( es sei denn die sind UN-signiert )

man "könnte" versuchen den langsamen PC mit den "frischen" Treiber manuell zu updaten ... bei gleicher Hardware und OS Version sollte er die Treiber annehmen

p.s. Treiber sind für AMD Ryzen 4650G, ASUS PRIME A520M-K Mainboard
gruss by OHR
Jimmy
mmo
Rookie
Rookie
Beiträge: 8
Registriert: Fr, 23. Sep 2022 15:29
Hat sich bedankt: 1 Mal
Danksagung erhalten: 2 Mal

Re: GUI Performance unter Windows 11

Beitrag von mmo »

Hallo, um dem Problem auf die Schliche zu kommen, wäre das ein Ansatz, ob es an "veraltete" Treiber liegt.
Wie ich erwähnte, habe ich einen ein Jahr alten Dell Rechner, auf dem WIN11 von WIN10 aktualisert wurde.
Wenn ich auf die Dell Seite über den Service Tag die Treiber analysieren lasse, zeigt es mir an, dass alles aktuell ist. Von daher wüßte ich jetzt nicht, was ich aktualisieren sollte.
Außer alles zu deinstallieren und wieder zu installieren fällt mir spontan nichts ein.
Gruß
IJ
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: GUI Performance unter Windows 11

Beitrag von Jan »

Ich frage mich ob man das wirklich nur auf die Treiber schieben kann. Oder so einfach. Wenn man sich die Artikel im Netz anschaut (und ich meine jetzt audrücklich nicht den Alaska-Newsletter, aber mal angfangen von den beiden Artikeln auf die die dort verlinken) dann liest man von Problemen allerorten. Und von diesen Spezialisten wäre doch sicher auch mal jemand auf die Idee gekommen "einfach mal eben" die Treiber zu kontrollieren und upzudaten.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: GUI Performance unter Windows 11

Beitrag von AUGE_OHR »

hi Jan,
Jan hat geschrieben: Mi, 28. Sep 2022 10:30"einfach mal eben" die Treiber zu kontrollieren und upzudaten.
wenn du die Treiber sichert und mal in die Ordner sehen würdest ...
da sind nicht nur *.SYS Dateien sondern auch *.DLL :!:

auch wenn die *.SYS Dateien die selbe Version aufweisen muss es nicht für den "Rest" gelten
darum wird es "Online" auch nicht erkannt werden wenn man nicht die "passende" DLL hat

man müsste den alten Treiber löschen, "komplett", und dann neu "Manuell" von "meinem Computer" -> USB-Stick die Treiber komplett "installieren"

---

mir wurde noch eine Möglichkeit angeboten ... aber da hab ich mich nicht getraut

VORHER : aktuelles Windows Image holen ( Mediacreationtool )
OFFLINE !!!
man soll im Geräte-Manager die Treiber für Grafikkarte, Netzwerkkarte "deinstallieren" wobei Windows dann den "Basic" Adapter nimmt.
danach NICHT re-booten sondern
man startet ein "Inplace" Update aus dem laufenden Windows d.h. das SETUP.EXE auf der CD (ISO Image)

da es keine "alten" Treiber dafür gibt wird Windows die "neuen" nehmen und auch die entsprechenden *.DLL

---
... aber wenn du eine gute Idee hast immer raus damit :idea:
gruss by OHR
Jimmy
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: GUI Performance unter Windows 11

Beitrag von Jan »

AUGE_OHR hat geschrieben: Do, 29. Sep 2022 11:37 ... aber wenn du eine gute Idee hast immer raus damit :idea:
Jimmy,

ich habe nicht gesagt das ich es besser weiß. Ich hatte lediglich darauf hingewiesen das wenn das so "einfach" wäre wie Du es darstellst, das dann vermutlich weltweit auch andere Spezialisten auf die Idee gekommen wören.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Antworten