Ruby의 작은 Hash, O(1) 조회로 빨라진다
Speeding Up (Small) Ruby Hashes
Ruby 4.1.0dev에서 8개 이하의 키를 가진 Hash(ar_table)의 조회가 선형 탐색에서 O(1)로 개선될 예정이다. 현재 ar_table은 배열 기반이라 키를 찾기 위해 최대 8번의 비교가 필요하며, 벤치마크에서 8번째 키 조회는 첫 번째 키보다 1.58배 느렸다. 개발자 byroot는 SWAR 기법을 도입해 8바이트 힌트를 한 번에 비교하는 방식으로 성능을 높였다.
이 특정 경우에 선형 탐색 성능은 st_table로 백업된 Hash의 성능과 크게 다르지 않다.