On 9/18/20 9:13 AM, Fabian Grünbichler wrote: > On September 17, 2020 5:06 pm, Thomas Lamprecht wrote: >> Was this issued raised on the currently used module's upstream? >> Maybe we/they could fix it there too, helping more than just our use >> case. > > not raised, but given the docs/description I'd say chances are rather > slim: > > This module implements a subset of the YAML specification for use in > reading and writing CPAN metadata files like META.yml and MYMETA.yml. It > should not be used for any other general YAML parsing or generation > task. > > it's based on/derived from YAML::Tiny, which states: > > It only supports a very basic subset of the full YAML specification. > > Usage is targeted at files like Perl's META.yml, for which a small and > easily-embeddable module is extremely attractive. > > Features will only be added if they are human readable, and can be > written in a few lines of code. Please don't be offended if your request > is refused. Someone has to draw the line, and for YAML::Tiny that > someone is me.
ah ok, thanks for pointing that out. >> >> >> That said, I have no real objection against using this XS binding of >> libyaml-0-2. >> btw. we get that already installed on ceph setups through the dependency >> chain: ceph-mgr -> python3-yaml -> libyaml-0-2 > > install size is also very small (xs+lib are ~200kb), memory overhead > probably quite a bit more? we could load it only in the code-path where > we render yaml ;) > Did some simple measurements of RSS from freshly restarted daemon/proxy workers without client requests yet (Daemon module bases on CLIHandler which includes CLIFormatter). I repeated them about 10 times and recorded min/max values: pvedaemon worker: before: max: 125072 min: 124968 after: max: 124500 min: 124316 pveproxy worker: before: max: 129184 min: 128816 after: max: 128536 min: 128420 This isn't probably to significant statistically, but it actually seems that using libyaml XS bindings saves RSS over the perl-modules CPAN one. This comes probably mostly from the fact that it uses XSLoader[0], which allows dynamic on-the-fly loading of libraries, so it is already only loaded once really used. [0]: https://perldoc.perl.org/XSLoader.html _______________________________________________ pve-devel mailing list [email protected] https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
