Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 10 of 11 total
Thread DBIsam running slow on server 2012
Mon, Jan 15 2018 5:35 AMPermanent Link

Caspers

Microloon

A have a small testapplication that just opens and closes a number of dbisam tables.
It runs on the C: drive of my local Windows 10 of my local machine.
it takes less than one second to open the tables.

If i run the same application on a windows server 2012 R2
with the same data installed on the C: Drive
it takes about 4 seconds to open the tables.

What can i do to speed this up.



Attachments: ServerSpeedTest.zip
Mon, Jan 15 2018 7:38 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Caspers


The first point is that whilst your selection of test methodology is understandable it isn't particularly robust. Rather than getting the time I'd use GetTickCount which is a little better, or if I was serious I'd use one of the high precision timers.

Next point is that you have this

Table1.DatabaseName := ExtractFilePath(Application.Exename);

outside the loop but this

 DBISAMTable1.DatabaseName := ExtractFilePath(DbIsamFiles[i1]);

inside it

Neither of those points makes much diference what does is something you, I and Tim have no influence over - buffering. Not only Windows but also the BDE.

Windows buffering is a bit of a nightmare. Whenever I'm serious about doing comparisons I have to reboot in between each test - great when testing over a LAN Frown

Its also possible that Windows has decided that DBISAM is operating in shared mode which can slow things down a lot - BDE tricks it way round this which contributes to its fragility.

Generally speaking BDE will outperform DBISAM in a simple speed test. In the real world where you have to take into account stability and robustness DBISAM wins hands down. I switched from BDE to DBISAM because I got fed up of having to sort out crashes and "BLOB has been modified"

Tim can probably tell you how far back I bought DBISAM. The fact that I now use its big brother (ElevateDB) should give an idea that I'm happy with the speed.

As a matter of curiosity what are you trying to achieve with the tests?

Roy Lambert


---
This email has been checked for viruses by AVG.
http://www.avg.com
Mon, Jan 15 2018 9:52 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Caspers


I've just been told by Mathew Jones

> windows server 2012 R2

Not sure if they make much of it nowadays, but the servers emphasise
performance of the background services, and not the foreground UI, which
is the opposite of the desktop versions. That alone might cause this.

Roy Lambert


---
This email has been checked for viruses by AVG.
http://www.avg.com
Mon, Jan 15 2018 5:25 PMPermanent Link

Raul

Team Elevate Team Elevate

On 1/15/2018 5:35 AM, Caspers wrote:
> A have a small testapplication that just opens and closes a number of dbisam tables.
> It runs on the C: drive of my local Windows 10 of my local machine.
> it takes less than one second to open the tables.
>
> If i run the same application on a windows server 2012 R2
> with the same data installed on the C: Drive
> it takes about 4 seconds to open the tables.
>
> What can i do to speed this up.

I just tried your app "as is" on my server2012r2 test server and dbisam
test took 202 milliseconds so 1/5th of a second.

Windows 2012R2 version 6.3 build 9600

Looks fine here so i would suspect something on your server - anti-virus
or such.

Raul

NB! BDE part of the app failed since i obviously have no BDE on my
server so that is expected.




Attachments: 2018-01-15_17-22-57.jpg
Tue, Jan 16 2018 2:54 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Raul


The timing is about the same here on a W7x64 i7 notebook. If you start up the exe and run the test several times DBISAM is fairly consistent ranging between 170 & 210. BDE drops markedly from 200 on the first run down to 60-70 on subsequent runs ie buffering

Roy Lambert
Tue, Jan 16 2018 3:39 AMPermanent Link

Chris Holland

SEC Solutions Ltd.

Avatar

Team Elevate Team Elevate

I just tried it on my two test servers,one Windows 2012 server and the other Windows 2016 server.

Both took about 400 ms for the DBISAM (BDE failed as it is not loaded)
Chris Holland
[Team Elevate]
Tue, Jan 16 2018 11:28 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

<< A have a small testapplication that just opens and closes a number of dbisam tables.
It runs on the C: drive of my local Windows 10 of my local machine.
it takes less than one second to open the tables.

If i run the same application on a windows server 2012 R2
with the same data installed on the C: Drive
it takes about 4 seconds to open the tables. >>

I don't have 2012 installed here in a way that I can test it, but with 2008 R2 (Windows 7 client) the results are:

~200 msecs average for DBISAM
~300 msecs average for the BDE

This is with modifying your code to use GetTickCount instead, for more precision in the timing.

There could be an issue with SMB 3, so I'll have to test it against 2012 or higher with a Windows 10 client to see if the SMB 3 network redirector is playing a role.

Tim Young
Elevate Software
www.elevatesoft.com
Wed, Jan 17 2018 3:27 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Tim


Try running the test several times and I think you'll see the BDE figure plummet, or at least that what I had.

I was also wondering about the multi-user access thingy. But I can't remember if that was ElevateDB, DBISAM or both.

Roy Lambert
Wed, Jan 17 2018 6:30 AMPermanent Link

Caspers

Microloon

Thank you all for your input
I think i have to go back to the system administrator .
We did not abandond bde because we loved it so mutch
and we are very pleased with dbisam
Thu, Jan 18 2018 8:21 AMPermanent Link

Raymond

Microloon

on the serverside i changed the powerplan to high performance this changed the times a lot
Page 1 of 2Next Page »
Jump to Page:  1 2
Image