firebird.performance.testing

14
Firebird Performance Testing 19-OCT-2010 Dmitry Yemanov [email protected] Alexey Kovyazin, IBSurgeon [email protected]

Upload: mind-the-firebird

Post on 18-Dec-2014

17.150 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Firebird.performance.testing

FirebirdPerformance Testing

19-OCT-2010

Dmitry [email protected]

Alexey Kovyazin, [email protected]

Page 2: Firebird.performance.testing

Basic considerations

● Learn the used test in details. Make sure you understand its goal. Figure out what is actually being tested.

● Pay attention to the hardware and software setup. Avoid exotic configurations.

● Take caching effects and differencies among runs into account. Remove extreme values from the results or comment them appropriately.

● Don't compare apples to oranges.

Page 3: Firebird.performance.testing

Firebird settings

● Architecture: Classic or SuperServer.● Database page size.● Page cache size. Remember about the

filesystem cache.● Sort buffer size. It differs between CS and SS.● Lock table settings: LockMemSize,

LockHashSlots.● Forced writes setting.● Garbage collection policy.

Page 4: Firebird.performance.testing

Testing analytic queries

● Single user● Involves optimizer decisions

and raw execution efficiency● Hardware: Intel Core2 2.4GHz Quad, 4GB

RAM, SATA2 HDD 7200rpm● Firebird settings: Classic Server, 256 buffer

pages● Results are in seconds, the less the better

Page 5: Firebird.performance.testing

Total time spent

10

500

1000

1500

2000

2500

FB 2.1FB 2.5

FB 2.1 : 2052 sFB 2.5 : 271 s

Page 6: Firebird.performance.testing

Time distribution among tests

1 2 3 4 5 6 7 8 9 10 11 12 13 14 150

200

400

600

800

1000

1200

1400

1600

1800

2000

FB 2.1FB 2.5

Page 7: Firebird.performance.testing

FB cache vs OS cache

● Database is 1.5GB● 1.5GB of Firebird page cache and disabled OS

filesystem cache● 1MB of Firebird page cache and enabled OS

filesystem cache● Results are in seconds, the less the better

Page 8: Firebird.performance.testing

Total time spent

10

100

200

300

400

500

600

700

800

FB cacheOS cache

FB cache : 709 sOS cache : 271 s

Page 9: Firebird.performance.testing

Time distribution among tests

1 2 3 4 5 6 7 8 9 10 11 12 13 14 150

50

100

150

200

250

300

350

400

FB cacheOS cache

Page 10: Firebird.performance.testing

Load speed test

● 4 concurrent users● Database sizes: 9Gb and 22Gb● Hardware: Intel Core2 2.4GHz Quad, 4GB

RAM, SATA2 HDD 7200rpm● Firebird settings: Classic vs SuperClassic,

256 buffer pages● Firebird versions: 2.1 Classic, 2.5 SuperClassic● Results are seconds, the less the better

Page 11: Firebird.performance.testing

Classic vs SuperClassic Load

Database 9Gb loading:

2.1 CS : 1759 sec2.5 CS : 1130 sec

2.5 SC: 1302 sec

2.1 Classic 2.5 Classic 2.5 SuperClassic0

200

400

600

800

1000

1200

1400

1600

1800

2000

Database 22Gb loading:

2.1 CS : 4290 sec2.5 CS : 3971 sec

2.5 SC: 3328 sec

2.1 Classic 2.5 Classic 2.5 SuperCalssic0

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

Page 12: Firebird.performance.testing

Testing concurrency

● Many concurrent users● Involves raw execution efficiency

as well as overall scalability● Hardware: Intel Core2 2.4GHz, 4GB RAM,

SATA2 HDD 7200rpm● Firebird settings: Classic vs SuperClassic,

256 buffer pages● Results are in completed transactions per

minute, the more the better

Page 13: Firebird.performance.testing

Classic vs SuperClassic

100 users 250 users0

50

100

150

200

250

300

350

CSSC

100 users:

CS : 282 tpmSC : 313 tpm

250 users:

CS : 159 tpmSC : 181 tpm