http://bugzilla.spamassassin.org/show_bug.cgi?id=3671
------- Additional Comments From [EMAIL PROTECTED] 2004-08-07 00:23 ------- Subject: Re: Possible 30 - 40% speed increase for Bayes with SDBM_File It seems like the main issue with SDBM the key+value size limit of 1008 bytes. The 10,000 entry thing mentioned in the QDBM benchmark page is a bit more concerning to me. The key+value length is a non-issue for us, I think. This is interesting: http://mathforum.org/epigone/modperl/quermhingblel says: ------- start of cut text -------------- BENCHMARKS In the distribution ./bench directory is a bench_sync.pl script that can benchmark using the various DBMs with MLDBM::Sync. The MLDBM::Sync::SDBM_File DBM is special because is uses SDBM_File for fast small inserts, but slows down linearly with the size of the data being inserted and read, with the speed matching that of GDBM_File & DB_File somewhere around 20,000 bytes. So for DBM key/value pairs up to 10000 bytes, you are likely better off with MLDBM::Sync::SDBM_File if you can afford the extra space it uses. At 20,000 bytes, time is a wash, and disk space is greater, so you might as well use DB_File or GDBM_File. Note that MLDBM::Sync::SDBM_File is ALPHA as of 2/27/2001. The results for a dual 450 linux 2.2.14, with a ext2 file system blocksize 4096 mounted async on a SCSI disk were as follows: === INSERT OF 50 BYTE RECORDS === Time for 100 write/read's for SDBM_File 0.12s 12288 bytes Time for 100 write/read's for MLDBM::Sync::SDBM_File 0.14s 12288 bytes Time for 100 write/read's for GDBM_File 2.07s 18066 bytes Time for 100 write/read's for DB_File 2.48s 20480 bytes === INSERT OF 500 BYTE RECORDS === Time for 100 write/read's for SDBM_File 0.21s 658432 bytes Time for 100 write/read's for MLDBM::Sync::SDBM_File 0.51s 135168 bytes Time for 100 write/read's for GDBM_File 2.29s 63472 bytes Time for 100 write/read's for DB_File 2.44s 114688 bytes === INSERT OF 5000 BYTE RECORDS === (skipping test for SDBM_File 1024 byte limit) Time for 100 write/read's for MLDBM::Sync::SDBM_File 1.30s 2101248 bytes Time for 100 write/read's for GDBM_File 2.55s 832400 bytes Time for 100 write/read's for DB_File 3.27s 839680 bytes === INSERT OF 20000 BYTE RECORDS === (skipping test for SDBM_File 1024 byte limit) Time for 100 write/read's for MLDBM::Sync::SDBM_File 4.54s 13162496 bytes Time for 100 write/read's for GDBM_File 5.39s 2063912 bytes Time for 100 write/read's for DB_File 4.79s 2068480 bytes === INSERT OF 50000 BYTE RECORDS === (skipping test for SDBM_File 1024 byte limit) Time for 100 write/read's for MLDBM::Sync::SDBM_File 12.29s 16717824 bytes Time for 100 write/read's for GDBM_File 9.10s 5337944 bytes Time for 100 write/read's for DB_File 11.97s 5345280 bytes ------- end ---------------------------- ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.