Project

General

Profile

Feature #12180

switch id_table.c variant

Added by funny_falcon (Yura Sokolov) about 4 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Normal
Target version:
-
[ruby-core:74349]

Description

Currently used variant is 'binary search in small table + hash for large tables'.
But for contemporary CPU it may be better to do linear scan for small tables.

It is already implemented in id_table.c and numbered as 35.

Tested with simple Redmine installation on Intel Haswell i7-4770 CPU @ 3.40GHz

  • trunk: Requests per second: 27.79 [#/sec] (mean)
  • with switched implementation: Requests per second: 28.87 [#/sec] (mean)

Files

0001-id_table.c-switch-id_table-variant.patch (767 Bytes) 0001-id_table.c-switch-id_table-variant.patch funny_falcon (Yura Sokolov), 03/15/2016 06:51 PM

Also available in: Atom PDF