"Daniel P. Berrange" <berrange@xxxxxxxxxx> writes: >> This series was applied to the libosinfo source. >> >> function total time spent in the function >> >> osinfo_loader_get_device 32.83% >> osinfo_db_get_device 2.96% >> osinfo_db_add_device 4.50% >> osinfo_db_new 24.97% >> >> so creating a new GObject is very slow. I thought about creating just a >> model object and then clone it instead of going trough the gobject >> constructors for every instance. Does it sound like a good idea? (I am >> not still sure if g_type_create_instance will be enough to achieve this, >> haven't looked into details). > > What's the actual wallclock time this demo takes to run for you ? > > For me it is a fraction of a second, which seems pretty fast and shouldn't > be noticable by the user. > > $ time ./demo > > real 0m0.238s > user 0m0.218s > sys 0m0.014s It takes approximately the same time for me as well. Indeed, it is not much time but it seems noticeable in the upstream version of virt-manager, where the UI seems a bit slower compared to older versions without libosinfo when the data is accessed for the first time and I preferred to optimize this in libosinfo instead of a workaround in virt-manager. Anyway, this series cuts enough wallclock time that this effect is much less noticeable now that shouldn't be a problem for virt-manager users too. Regards, Giuseppe _______________________________________________ Libosinfo mailing list Libosinfo@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libosinfo