[Yum-devel] [PATCH][RFC] Optimizing SqliteSack
Florian Festi
ffesti at redhat.com
Tue Dec 18 12:39:26 UTC 2007
OK, after some more tests I found some more tweaks to reduce both runtime
and memory usage. I'd like to postpone the LRU cache stuff a bit but get the
sqlitesack changes and the additional tweaks in fast.
They include:
* SqliteSack
* Use pkgKey instead of pkgId
* Generate only one package object per package (Now fixed)
* Load only minimal tags per default.
* Create YumAvailablePackageSqlite._files and ._checksums on demand only
* Package
* Make Package.pkgtup a real tuple
* Cache hash value
These changes affect all operations but installs see higher percentage
changes as they do more Sqlite operations and only few operations on the rpmdb.
F8 full install
258MB -> 181MB (30%)
71.5s -> 44.1s (38%)
1000pkg install
97.5MB -> 80MB (18%)
22.8s -> 15.4s (33%)
Any objections?
Florian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Move-most-operation-to-be-based-on-pkgKey-instead-of.patch
Type: text/x-patch
Size: 16714 bytes
Desc: not available
Url : http://lists.baseurl.org/pipermail/yum-devel/attachments/20071218/32357f60/attachment.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Make-Package.pkgtup-a-real-tuple-to-save-memory-and.patch
Type: text/x-patch
Size: 2923 bytes
Desc: not available
Url : http://lists.baseurl.org/pipermail/yum-devel/attachments/20071218/32357f60/attachment-0001.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-cache-hash-value-of-Package-objects.patch
Type: text/x-patch
Size: 1824 bytes
Desc: not available
Url : http://lists.baseurl.org/pipermail/yum-devel/attachments/20071218/32357f60/attachment-0002.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-Create-YumAvailablePackageSqlite._files-and-._checks.patch
Type: text/x-patch
Size: 1342 bytes
Desc: not available
Url : http://lists.baseurl.org/pipermail/yum-devel/attachments/20071218/32357f60/attachment-0003.bin
More information about the Yum-devel
mailing list