I've processed the results of the tests with double sorting split which I've sheduled for buffering build. I've updated wiki page with them: http://wiki.postgresql.org/wiki/Fast_GiST_index_build_GSoC_2011#Testing_results Raw results of query speed measues are in the attachment. There number of pages accesse is presented in dependency of table, buffering build and split method. Note, that tests were run with not last version of fast build patch ("gist_fast_build-heikki-0.14.1.1.patch" was used). Therefore, build time with buffering can be better.
------ With best regards, Alexander Korotkov.
dataset | build method | split method | predicate | page accesses -----------------+------------------------+----------------+-------------------------------------------+--------------- uniform | buffering (1/366/on) | new linear | point <@ '(0.505,0.505),(0.5,0.5)'::box | 492 uniform | buffering (1/366/on) | new linear | point <@ '(0.501,0.501),(0.5,0.5)'::box | 125 uniform | buffering (1/366/on) | new linear | point <@ '(0.51,0.51),(0.5,0.5)'::box | 876 uniform | buffering (1/366/on) | new linear | point <@ '(0.21,0.21),(0.2,0.2)'::box | 1453 uniform | buffering (1/366/on) | new linear | point <@ '(0.103,0.903),(0.1,0.9)'::box | 394 uniform | buffering (1/366/auto) | new linear | point <@ '(0.505,0.505),(0.5,0.5)'::box | 333 uniform | buffering (1/366/auto) | new linear | point <@ '(0.501,0.501),(0.5,0.5)'::box | 134 uniform | buffering (1/366/auto) | new linear | point <@ '(0.51,0.51),(0.5,0.5)'::box | 570 uniform | buffering (1/366/auto) | new linear | point <@ '(0.21,0.21),(0.2,0.2)'::box | 720 uniform | buffering (1/366/auto) | new linear | point <@ '(0.103,0.903),(0.1,0.9)'::box | 520 uniform | ordinal | new linear | point <@ '(0.505,0.505),(0.5,0.5)'::box | 563 uniform | ordinal | new linear | point <@ '(0.501,0.501),(0.5,0.5)'::box | 159 uniform | ordinal | new linear | point <@ '(0.51,0.51),(0.5,0.5)'::box | 917 uniform | ordinal | new linear | point <@ '(0.21,0.21),(0.2,0.2)'::box | 809 uniform | ordinal | new linear | point <@ '(0.103,0.903),(0.1,0.9)'::box | 330 uniform | buffering (1/366/on) | double sorting | point <@ '(0.505,0.505),(0.5,0.5)'::box | 43 uniform | buffering (1/366/on) | double sorting | point <@ '(0.501,0.501),(0.5,0.5)'::box | 8 uniform | buffering (1/366/on) | double sorting | point <@ '(0.51,0.51),(0.5,0.5)'::box | 128 uniform | buffering (1/366/on) | double sorting | point <@ '(0.21,0.21),(0.2,0.2)'::box | 120 uniform | buffering (1/366/on) | double sorting | point <@ '(0.103,0.903),(0.1,0.9)'::box | 18 uniform | buffering (1/366/auto) | double sorting | point <@ '(0.505,0.505),(0.5,0.5)'::box | 38 uniform | buffering (1/366/auto) | double sorting | point <@ '(0.501,0.501),(0.5,0.5)'::box | 7 uniform | buffering (1/366/auto) | double sorting | point <@ '(0.51,0.51),(0.5,0.5)'::box | 119 uniform | buffering (1/366/auto) | double sorting | point <@ '(0.21,0.21),(0.2,0.2)'::box | 116 uniform | buffering (1/366/auto) | double sorting | point <@ '(0.103,0.903),(0.1,0.9)'::box | 20 uniform | ordinal | double sorting | point <@ '(0.505,0.505),(0.5,0.5)'::box | 37 uniform | ordinal | double sorting | point <@ '(0.501,0.501),(0.5,0.5)'::box | 7 uniform | ordinal | double sorting | point <@ '(0.51,0.51),(0.5,0.5)'::box | 116 uniform | ordinal | double sorting | point <@ '(0.21,0.21),(0.2,0.2)'::box | 123 uniform | ordinal | double sorting | point <@ '(0.103,0.903),(0.1,0.9)'::box | 19 usnoa2 | buffering (1/366/on) | new linear | point <@ '(275.8,6.8),(275.5,6.5)'::box | 70 usnoa2 | buffering (1/366/on) | new linear | point <@ '(300.8,6.8),(300.5,6.5)'::box | 80 usnoa2 | buffering (1/366/on) | new linear | point <@ '(240,-42.9),(239.9,-43)'::box | 15 usnoa2 | buffering (1/366/on) | new linear | point <@ '(259,-44.5),(258.9,-45.6)'::box | 89 usnoa2 | buffering (1/366/on) | new linear | point <@ '(309.6,27),(309.5,26.9)'::box | 15 usnoa2 | buffering (1/366/auto) | new linear | point <@ '(275.8,6.8),(275.5,6.5)'::box | 68 usnoa2 | buffering (1/366/auto) | new linear | point <@ '(300.8,6.8),(300.5,6.5)'::box | 71 usnoa2 | buffering (1/366/auto) | new linear | point <@ '(240,-42.9),(239.9,-43)'::box | 13 usnoa2 | buffering (1/366/auto) | new linear | point <@ '(259,-44.5),(258.9,-45.6)'::box | 86 usnoa2 | buffering (1/366/auto) | new linear | point <@ '(309.6,27),(309.5,26.9)'::box | 19 usnoa2 | ordinal | new linear | point <@ '(275.8,6.8),(275.5,6.5)'::box | 69 usnoa2 | ordinal | new linear | point <@ '(300.8,6.8),(300.5,6.5)'::box | 397 usnoa2 | ordinal | new linear | point <@ '(240,-42.9),(239.9,-43)'::box | 195 usnoa2 | ordinal | new linear | point <@ '(259,-44.5),(258.9,-45.6)'::box | 85 usnoa2 | ordinal | new linear | point <@ '(309.6,27),(309.5,26.9)'::box | 415 usnoa2 | buffering (1/366/on) | double sorting | point <@ '(275.8,6.8),(275.5,6.5)'::box | 57 usnoa2 | buffering (1/366/on) | double sorting | point <@ '(300.8,6.8),(300.5,6.5)'::box | 48 usnoa2 | buffering (1/366/on) | double sorting | point <@ '(240,-42.9),(239.9,-43)'::box | 13 usnoa2 | buffering (1/366/on) | double sorting | point <@ '(259,-44.5),(258.9,-45.6)'::box | 59 usnoa2 | buffering (1/366/on) | double sorting | point <@ '(309.6,27),(309.5,26.9)'::box | 10 usnoa2 | buffering (1/366/auto) | double sorting | point <@ '(275.8,6.8),(275.5,6.5)'::box | 56 usnoa2 | buffering (1/366/auto) | double sorting | point <@ '(300.8,6.8),(300.5,6.5)'::box | 48 usnoa2 | buffering (1/366/auto) | double sorting | point <@ '(240,-42.9),(239.9,-43)'::box | 11 usnoa2 | buffering (1/366/auto) | double sorting | point <@ '(259,-44.5),(258.9,-45.6)'::box | 67 usnoa2 | buffering (1/366/auto) | double sorting | point <@ '(309.6,27),(309.5,26.9)'::box | 11 usnoa2 | ordinal | double sorting | point <@ '(275.8,6.8),(275.5,6.5)'::box | 56 usnoa2 | ordinal | double sorting | point <@ '(300.8,6.8),(300.5,6.5)'::box | 50 usnoa2 | ordinal | double sorting | point <@ '(240,-42.9),(239.9,-43)'::box | 14 usnoa2 | ordinal | double sorting | point <@ '(259,-44.5),(258.9,-45.6)'::box | 71 usnoa2 | ordinal | double sorting | point <@ '(309.6,27),(309.5,26.9)'::box | 12 usnoa2_shuffled | buffering (1/366/on) | new linear | point <@ '(275.8,6.8),(275.5,6.5)'::box | 1086 usnoa2_shuffled | buffering (1/366/on) | new linear | point <@ '(300.8,6.8),(300.5,6.5)'::box | 979 usnoa2_shuffled | buffering (1/366/on) | new linear | point <@ '(240,-42.9),(239.9,-43)'::box | 180 usnoa2_shuffled | buffering (1/366/on) | new linear | point <@ '(259,-44.5),(258.9,-45.6)'::box | 1180 usnoa2_shuffled | buffering (1/366/on) | new linear | point <@ '(309.6,27),(309.5,26.9)'::box | 409 usnoa2_shuffled | buffering (1/366/auto) | new linear | point <@ '(275.8,6.8),(275.5,6.5)'::box | 710 usnoa2_shuffled | buffering (1/366/auto) | new linear | point <@ '(300.8,6.8),(300.5,6.5)'::box | 539 usnoa2_shuffled | buffering (1/366/auto) | new linear | point <@ '(240,-42.9),(239.9,-43)'::box | 99 usnoa2_shuffled | buffering (1/366/auto) | new linear | point <@ '(259,-44.5),(258.9,-45.6)'::box | 1058 usnoa2_shuffled | buffering (1/366/auto) | new linear | point <@ '(309.6,27),(309.5,26.9)'::box | 193 usnoa2_shuffled | ordinal | new linear | point <@ '(275.8,6.8),(275.5,6.5)'::box | 726 usnoa2_shuffled | ordinal | new linear | point <@ '(300.8,6.8),(300.5,6.5)'::box | 674 usnoa2_shuffled | ordinal | new linear | point <@ '(240,-42.9),(239.9,-43)'::box | 82 usnoa2_shuffled | ordinal | new linear | point <@ '(259,-44.5),(258.9,-45.6)'::box | 1239 usnoa2_shuffled | ordinal | new linear | point <@ '(309.6,27),(309.5,26.9)'::box | 312 usnoa2_shuffled | buffering (1/366/on) | double sorting | point <@ '(275.8,6.8),(275.5,6.5)'::box | 45 usnoa2_shuffled | buffering (1/366/on) | double sorting | point <@ '(300.8,6.8),(300.5,6.5)'::box | 41 usnoa2_shuffled | buffering (1/366/on) | double sorting | point <@ '(240,-42.9),(239.9,-43)'::box | 12 usnoa2_shuffled | buffering (1/366/on) | double sorting | point <@ '(259,-44.5),(258.9,-45.6)'::box | 53 usnoa2_shuffled | buffering (1/366/on) | double sorting | point <@ '(309.6,27),(309.5,26.9)'::box | 9 usnoa2_shuffled | buffering (1/366/auto) | double sorting | point <@ '(275.8,6.8),(275.5,6.5)'::box | 50 usnoa2_shuffled | buffering (1/366/auto) | double sorting | point <@ '(300.8,6.8),(300.5,6.5)'::box | 40 usnoa2_shuffled | buffering (1/366/auto) | double sorting | point <@ '(240,-42.9),(239.9,-43)'::box | 11 usnoa2_shuffled | buffering (1/366/auto) | double sorting | point <@ '(259,-44.5),(258.9,-45.6)'::box | 55 usnoa2_shuffled | buffering (1/366/auto) | double sorting | point <@ '(309.6,27),(309.5,26.9)'::box | 9 usnoa2_shuffled | ordinal | double sorting | point <@ '(275.8,6.8),(275.5,6.5)'::box | 48 usnoa2_shuffled | ordinal | double sorting | point <@ '(300.8,6.8),(300.5,6.5)'::box | 44 usnoa2_shuffled | ordinal | double sorting | point <@ '(240,-42.9),(239.9,-43)'::box | 13 usnoa2_shuffled | ordinal | double sorting | point <@ '(259,-44.5),(258.9,-45.6)'::box | 53 usnoa2_shuffled | ordinal | double sorting | point <@ '(309.6,27),(309.5,26.9)'::box | 9 (90 rows)
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers