Messages in this thread |  | | Subject | Re: slab: avoid linear search in kmalloc? (GCC Guru wanted :) | From | Momchil Velikov <> | Date | 21 Nov 2001 11:34:48 +0200 |
| |
>>>>> "Arjan" == Arjan van de Ven <arjanv@redhat.com> writes:
Arjan> Momchil Velikov wrote: >> >> >>>>> "Bernd" == Bernd Eckenfels <ecki@lina.inka.de> writes: >> Bernd> Hello, Bernd> I noticed that kmalloc and kmem_find_general_cachep are doing a linear Bernd> search in the cache_sizes array. Isnt it better to speed that up by doing a Bernd> binary search or a b-tree if like the following patch? >> >> Here is a patch using a gcc extension. gcc generates binary search for the case.
Arjan> the big "case" statement makes you wonder if ffz(~size) would do the Arjan> same ;)
*Nod*, espesially on architectures, where it is a single instruction.
OTOH, this is possible only if the sizes are powers of two. And they could be more closely sparsed ...
Regards, -velco
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |