Barry Smith <[email protected]> writes:

>    If we put all the options passed in into a hash table then won’t a
>    PetscOptions look up be pretty cheap, compute the hash, look in the
>    table, check that the strings match with a strncmp, done (usually)
>    and at worst do 2 or 3 string compares?

Yes, I have always thought that we should use a hash for the options table...

>    If we adopt the view that an options check is very cheap that we
>    don’t need to worry much about options being rechecked right?

... however, I don't think it changes the picture that we should move
options testing out of the fast path for algorithms.  The hash just
pushes the pain point down somewhat, most importantly, in a way that is
scalable in the total number of options in the options table.  But with
a big options table, it's still a lot of string hashing and a lot of
likely cache misses probing into the options hash.

I would like to make PETSc competitive for integrating 20-species
chemical systems, and I don't see room for string operations in that
world.

Attachment: pgp56l2MphubX.pgp
Description: PGP signature

Reply via email to