Fossil SCM

*** FIXME TEXT *** do not commit to trunk *** FIXME TEST *** These are scripts for users to try out different cache sizes for both the SQLite PRAGMA cache_size and also the parameters for the content cache. The content cache will be a larger piece of work, but these are immediate fixes that give pretty big benefits on at least some workloads.

danshearer 2026-08-22 06:52 UTC cache-speedups
Commit 7b3e5b67384bfceeed7df5167ebcfbac63c1957c0c05c9d861a23079015b4459
--- a/cache-speedups-test/export.sh
+++ b/cache-speedups-test/export.sh
@@ -0,0 +1,8 @@
1
+sudo -v
2
+for n in 500 2000 5000; do
3
+ echo "cache_n=$n" ; export FOSSIL_CACHE_N=$n
4
+ export FOSSIL_CACHE_SZ=250000000 # This needs to be high but otherwise doesnt matter
5
+ cp sqlite.fossil /tmp/sqlite.fossil
6
+ sync; echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null # Linux only
7
+ time ../fossil export -R /tmp/sqlite.fossil > /dev/null
8
+done
--- a/cache-speedups-test/export.sh
+++ b/cache-speedups-test/export.sh
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
--- a/cache-speedups-test/export.sh
+++ b/cache-speedups-test/export.sh
@@ -0,0 +1,8 @@
1 sudo -v
2 for n in 500 2000 5000; do
3 echo "cache_n=$n" ; export FOSSIL_CACHE_N=$n
4 export FOSSIL_CACHE_SZ=250000000 # This needs to be high but otherwise doesnt matter
5 cp sqlite.fossil /tmp/sqlite.fossil
6 sync; echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null # Linux only
7 time ../fossil export -R /tmp/sqlite.fossil > /dev/null
8 done
--- a/cache-speedups-test/rebuild.sh
+++ b/cache-speedups-test/rebuild.sh
@@ -0,0 +1,7 @@
1
+sudo -v
2
+for n in 0 -32000 -256000; do
3
+ echo "sqlcache=$n" ; export FOSSIL_SQLCACHE=$n
4
+ cp sqlite.fossil /tmp/sqlite.fossil
5
+ sync; echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null # Linux only
6
+ time ../fossil rebuild /tmp/sqlite.fossil
7
+done
--- a/cache-speedups-test/rebuild.sh
+++ b/cache-speedups-test/rebuild.sh
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
--- a/cache-speedups-test/rebuild.sh
+++ b/cache-speedups-test/rebuild.sh
@@ -0,0 +1,7 @@
1 sudo -v
2 for n in 0 -32000 -256000; do
3 echo "sqlcache=$n" ; export FOSSIL_SQLCACHE=$n
4 cp sqlite.fossil /tmp/sqlite.fossil
5 sync; echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null # Linux only
6 time ../fossil rebuild /tmp/sqlite.fossil
7 done
--- a/cache-speedups-test/test-integrity.sh
+++ b/cache-speedups-test/test-integrity.sh
@@ -0,0 +1,8 @@
1
+sudo -v
2
+for n in 500 2000 5000; do
3
+ echo "cache_n=$n" ; export FOSSIL_CACHE_N=$n
4
+ export FOSSIL_CACHE_SZ=250000000 # This needs to be high but otherwise doesnt matter
5
+ cp sqlite.fossil /tmp/sqlite.fossil
6
+ sync; echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null # Linux only
7
+ time ../fossil test-integrity -R /tmp/sqlite.fossil > /dev/null
8
+done
--- a/cache-speedups-test/test-integrity.sh
+++ b/cache-speedups-test/test-integrity.sh
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
--- a/cache-speedups-test/test-integrity.sh
+++ b/cache-speedups-test/test-integrity.sh
@@ -0,0 +1,8 @@
1 sudo -v
2 for n in 500 2000 5000; do
3 echo "cache_n=$n" ; export FOSSIL_CACHE_N=$n
4 export FOSSIL_CACHE_SZ=250000000 # This needs to be high but otherwise doesnt matter
5 cp sqlite.fossil /tmp/sqlite.fossil
6 sync; echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null # Linux only
7 time ../fossil test-integrity -R /tmp/sqlite.fossil > /dev/null
8 done

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button