I am using PyYAML with libyaml, but it is still too slow when the YAML files have tens of thousands of lines.   So I have implemented a cache using python pickled dictionaries (these are rebuilt whenever the corresponding YAML file changes).    Could I suggest that something like this be added to the PyYAML distribution?
BTW, I find that PyYAML does not find libyaml when it is in /usr/local/, which is its default location.  (This is on Fedora 10).   I have to put libyaml in /usr/ for it to be found.