[VSDK Macho] Wishes and performance stuff

Totte Alm totte at code66.se
Tue Jan 21 12:57:09 CST 2003


Hello Ruslan,

[switch to land of dreams]

if I could do this:

UPDATE HolderTable  H, ShareRecord S SET H.Totalshares=SUM(S.shares) 
WHERE S.parentHolder=H.recid

or this

UPDATE HolderTable  H, ShareRecord S SET H.TotalVotes=SUM(S.shares) 
WHERE (S.parentHolder=H.recid) AND H.BuyBack=0

My life would be SO much easier ;-)

[Swich back to reality]

I've just done a huge speed improvement on my huge VSDK_Macho project 
when I realized that the optimal cachesize IS 4MB. I did run the 
Bundler-process (process the database in many many diffferent ways) 
with several different cachesizes on a 80MB database, and logged each 
operationgroup with a timestamp, and found that my 32MB cache was a 
performance penalty compared to the 4MB.

21:10.43.01.776 : 'Bundler with 4 MB cache'
Bundler: working on '/Users/totte/Documents/TestOut/xxx-secretfile'
21:10.43.02.367 : 'Bundler Started'
21:10.43.02.378 : 'Start mega preload' <- NOT valentina related
21:10.43.07.904 : 'Start Preparing' <- this step about 46.5 seconds 
with 4MB cache
21:10.43.54.439 : 'Start Bundling'

21:10.50.15.245 : 'Bundler with 32 MB cache'
Bundler: working on '/Users/totte/Documents/TestOut/xxx-secretfile'
21:10.50.16.206 : 'Bundler Started'
21:10.50.16.217 : 'Start mega preload' <- NOT valentina related
21:10.50.22.177 : 'Start Preparing' <- this step takes almost 2 minutes 
and 5 seconds with 32MB cache
21:10.53.16.964 : 'Start Bundling'

I also recoded a huge "calculate a bunch of sums" function to depend 
more on Valentina SQL SUM() and a Cursos,  than on looping the 
recordset, and guess what? 80 times faster.


// Totte
-----------------------------------------------------------------------
ceterum censeo microsoftiem delendam esse



More information about the Valentina mailing list