[Phpmyadmin-devel] Is PMA_STR_binarySearchInArr needed?

Marc Delisle marc at infomarc.info
Tue Jun 7 18:25:45 CEST 2011


Marc Delisle a écrit :
> Piotr Przybylski a écrit :
>> Hi,
>>
>> For some time I was curious whether PMA_STR_binarySearchInArr is
>> needed at all, and my test showed that there are faster (sometimes
>> much faster) alternatives. Test for 100 000 iterations on PHP 5.3.4
>> (Windows, i5 2,53 GHz core):
>>
>> PMA_STR_binarySearchInArr:    2.6606s
>> array_search:     1.8936s
>> isset:            0.0102s
>> array_key_exists: 0.0934s
>>
>> Isset and array_key_exists require flipped array, but array_search is
>> a drop-in replacement that works faster, even though it does a linear
>> search. Code used to perform this test is at [1].
>>
>> [1] http://pastebin.com/cJmpmCPh
>>
> 
> Piotr,
> I tested on a 64-bit Linux machine (running as a VM under ESX 4.1) under 
> PHP 5.3.6-RC3 and got different results (for current master):
> 
> Binary search:    0.6088
> array_search:     2.0246
> isset:            0.0068
> array_key_exists: 0.0176
> 
> 
> 
And on a similar VM running PHP 5.2.17:

Binary search:    0.7197
array_search:     2.7731
isset:            0.0075
array_key_exists: 0.0178

-- 
Marc Delisle
http://infomarc.info




More information about the Developers mailing list