Subject Re[2]: [Firebird-Architect] Index structures
Author Nickolay Samofatov
Hello, Jim,

> At 03:12 AM 5/25/2003 +0200, Arno Brinkman wrote:

>>I have done a query on a table with 1 million rows which joins another table
>>with 1 million rows. Pagesize = 8192, PK's are INTEGER, buffers = 10000,
>>Win2K, FB1.5-SS. The join criteria contains a equal comparision so that for
>>every record on table1 a index-lookup is done on table2 (which returns 1
>>record, PLAN JOIN(T1 NATURAL, T2 INDEX (PK_TABLE2)) ). These are the results
>>of Quantify :
>>
>>http://www.firebirdsql.info/images/screenshot_quantify_fbserver.gif


> The screen shot is a little hard to read, but it's exactly what I would
> expect. I
> don't see BTR compress there at all. Did I miss something?

1) Main idea is: scanning index bucket (BTR_find_leaf) is very long operation
which usually consumes more then half of processor time during query
execution. It would be good to change bucket structure a little to enable
binary search and get rid of this overhead.
2) There is evidence that enabling SSE2 instruction set in compiler
increases engine performance quite significantly even for Dialect 3
databases without DOUBLE PRECISION columns. This probably means FPU is
extensively used somewhere, but no profiling has been performed on
this subject yet.

> Jim Starkey


Nickolay Samofatov