Optimizing a Delphi 2009 app using Firebird 2.5 Alpha 1

The last few days I’ve spent optimizing an application written in Delphi 2009 that talks to a Firebird database using the standard TIBDatabase, TIBTransaction and TIBSQL components¬† The application needs to do alot of reading/writing to the database, and was rather slow so I had to optimize it a little …Read More »

Windows 7 – A promising thing when it comes to performance

As soon as I was able to (the download surge killing Win7 downloads prevented it for a while) I downloaded and installed 2 copies of the Win7 beta. One was on an old 3GHz HT Intel with 2Gb mem and the other on a Virtual PC inside my QuadCore Vista ultimate machine.

The installation was smooth on both, took about the same time and I was amazed at the lack of problems along the way. Both recognized all hardware components without problems and everything seemed fast on the GFX level even when I was using a VGA mode for both (no seeing any GFX specialties).

I next installed Firebird v2.1 (latest stable) and it insalled without problems as well on both machines. I didn’t have much time to play around with the OS but the little I did showed me a stable well working system with very little or no hichups at all.

In my personal opinion this Win7 will be a hit-OS in the future. It feels fast and looks good and I see no reason for me to start looking into alternative OS’s in the future. If drivers and programs are made compatible with this Beta I suspect they will work well with the official release and if MS adds WinFS or other enhancements to it later they will likely not break the compatibility in any way.

I for one will surely use it in the future! And a s bonus it seems my Delphi 2009 programs are also working flawlessly on it!

Firebird v2.5 Alpha 1 really makes a differance

While on vacation I’ve been working on a pet-project that has been around for many years now. The service is a mobile device chat and is powered by Firebird and PHP.

There used to be lots of problems handling more than 400 simultaneous users, but after a DB upgrade to Firebird v2.5 Alpha 1 things really look different.

Previously the DB machine (Dualcore) had one of the CPU’s running at 100% and the other not doing much (FB was Superserver) but after the switch the TOTAL CPU now ranges between 10% and 50% on the DB machine. At the same time the WebServer CPU load also decreased and is constantly under 60% where it used to be over 95% all the time!

So by just switching to the new DB engine a tremendous performance gain was achieved! Also a lot less errors are reported to the PHP error logs. The ones still coming are a deadlocks, but around 30 / 24h which is a lot less than it used to be!

To the Firebird team I want to say “THANK YOU for making a great database engine” !

Firebird v2.5 Alpha 1 UPPER() SQL statement resource hog

During my testing of the Firebird Performance I encountered a strange issue with the UPPER() command in SQL statements. Using the UPPER() command my SQL queries suddenly consumed 100% CPU from the server. All transaction times spike from 1-2 seconds to over 10 for the login operation, and the CPU on the DB machine goes to 100% flat instead of jumping between 30% and 90%… Read More »

Apache, PHP and Firebird Performance Tuning

In the last post I commented that I had a test-bed application, based on Apache, PHP and Firebird, and once the problem with the images was solved I could finally start doing the actual performance testing/tuning that I originally wanted to do.

The only major changes from the last post is that I’ve now upgraded the database engine to the “Firebird v2.5 Alpha 1” that supports SMP, and that the application now contains more base data in the tables.Read More »