Windows 10 Performance issues

This forum is for general support of Xbase++
Post Reply
Message
Author
User avatar
rdonnay
Site Admin
Posts: 4775
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Windows 10 Performance issues

#1 Post by rdonnay »

Recently, an eXpress++ customer (Dian Ray) reported that their application is running much slower under Windows 10 even though it has a faster processor.

In particular, it was in a routine where a large treeview menu was being created.
I think that I have determined that the slowdown is due to the increased time Windows 10 takes to open files, in this case .ICO files.

To prove my theory, I wrote the below program.
If I comment out the WTL command, the program runs a bit faster on the Windows 10 computer due to its faster processor. The WTL command writes debugging info to a file named DEBUG.LOG. It must open and close the file 10000 times.

If I leave the WTL command in the program, it takes 9.98 seconds on my Windows 7 computer and 93.34 seconds on my Windows 10 computer. This is what Dian has reported - about 10x longer.

I suspect that there are issues with Windows 10 file caching.

Does anyone have any information about this?

Code: Select all

#INCLUDE "dcdialog.CH"

FUNCTION Main()

LOCAL i, nSeconds := Seconds(), aSeconds := Array(10000)

FOR i := 1 TO Len(aSeconds)
  aSeconds[i] := Seconds()
  WTL aSeconds[i]
NEXT

? Seconds() - nSeconds
wait

RETURN nil
The eXpress train is coming - and it has more cars.

User avatar
TWolfe
Posts: 60
Joined: Thu Jan 28, 2010 7:34 am

Re: Windows 10 Performance issues

#2 Post by TWolfe »

I have seen similar slowdowns since later revisions to Windows 7. This was first noticed with dbCommit() commands.

I had this structure in many places in my program:

Code: Select all

DO WHILE !eof()
  IF chkbook->JUDGE == mcJudge
    rec_lock(0)
    REPLACE chkbook->DEPOSIT WITH mlSepBail
    unlock All
    DBCommit()
  ENDIF
  SKIP
ENDDO
Moving the DBCommit() command outside the loop made a huge difference in program speed.

Code: Select all

DO WHILE !eof()
  IF chkbook->JUDGE == mcJudge
    rec_lock(0)
    REPLACE chkbook->DEPOSIT WITH mlSepBail
    unlock All
  ENDIF
  SKIP
ENDDO
DBCommit()
I have also removed all code that wrote incremental text to .LOG files, I now build one large text file and only write at the end of a routine or when the text exceeds a specified size limit.

Terry

User avatar
Auge_Ohr
Posts: 1422
Joined: Wed Feb 24, 2010 3:44 pm

Re: Windows 10 Performance issues

#3 Post by Auge_Ohr »

32bit or 64bit Windows 10.14393 ?

in Alaska Newsgroup
public.xbase++.support.en
2. August 2016
Please assist: Benchmark Xbase++ on Windows - Test_Gui.zip
is about Performance to display XbParts

since Win7 we got WinSat -> Windows Index which is still available in Win 8/10.
i wrote this Demo to "read" those Value with WMI.

Code: Select all

   colItems       := objWMIServices:ExecQuery("select * from Win32_WinSAT",,48)
   bCollBlock     := {|oService,n| AADD(aItem,{ n,;
     oService:getProperty("CPUScore"),;
     oService:getProperty("MemoryScore"),;
     oService:getProperty("GraphicsScore"),;
     oService:getProperty("D3DScore"),;
     oService:getProperty("DiskScore"),;
     oService:getProperty("WinSPRLevel") })}

   ComEvalCollection(colItems, bCollBlock )

RETURN aItem
XBWINSAT.ZIP
v1.9.355
(22.53 KiB) Downloaded 1099 times
my PC have multi-boot OS() so same Hardware different SSD
32bit
WinSat_Win10_32bit.jpg
WinSat_Win10_32bit.jpg (54.91 KiB) Viewed 15821 times
64bit
WinSat_Win10_64bit.jpg
WinSat_Win10_64bit.jpg (50.8 KiB) Viewed 15821 times
as you can see 64bit Grafic is much slower than 32bit
greetings by OHR
Jimmy

User avatar
Auge_Ohr
Posts: 1422
Joined: Wed Feb 24, 2010 3:44 pm

Re: Windows 10 Performance issues

#4 Post by Auge_Ohr »

64bit Win 8.1
WinSat_Win81_64bit.jpg
WinSat_Win81_64bit.jpg (56.23 KiB) Viewed 15821 times
32bit Win 7 with HDD
WinSat_Win7_32bit.jpg
WinSat_Win7_32bit.jpg (52.94 KiB) Viewed 15821 times
! Note : 32bit use 3 GB only
p.s. what does MEMORY( MEM_RAM_TOTAL ) say with Xbase++ v2.x ?
greetings by OHR
Jimmy

Post Reply