$(sqlite3-wasm.o): emcc.cflags += $(SQLITE_OPT)
$(sqlite3-wasm.o): $(dir.top)/sqlite3.c
$(dir.api)/wasm_util.o: emcc.cflags += $(SQLITE_OPT)
-sqlite3-wasm.c := $(dir.api)/sqlite3-wasm.c \
- $(dir.jacc)/jaccwabyt_test.c
+sqlite3-wasm.c := $(dir.api)/sqlite3-wasm.c
+jaccwabyt_test.c := $(dir.jacc)/jaccwabyt_test.c
# ^^^ FIXME (how?): jaccwabyt_test.c is only needed for the test apps,
# so we don't really want to include it in release builds. However, we
# want to test the release builds with those apps, so we cannot simply
$$(emcc.bin) $$(emcc_opt) $$(emcc.flags) $$(emcc.cflags) -c $(1) -o $$@
CLEAN_FILES += $$($(1).o)
endef
-$(foreach c,$(sqlite3-wasm.c),$(eval $(call WASM_C_COMPILE,$(c))))
+$(foreach c,$(sqlite3-wasm.c) $(jaccwabyt_test.c),$(eval $(call WASM_C_COMPILE,$(c))))
$(sqlite3.js):
$(sqlite3.js): $(MAKEFILE) $(sqlite3.wasm.obj) \
EXPORTED_FUNCTIONS.api \
<label for='cb-reverse-log-order' id='lbl-reverse-log-order'>Reverse log order</label>
</span>
</div>
- <div id='test-output'></div>
+ <div id='test-output'>
+ </div>
+ <div id='tips'>
+ <strong>Tips:</strong>
+ <ul>
+ <li>Control-click the flags to (de)select multiple flags.</li>
+ <li>The easiest way to try different optimization levels is,
+ from this directory:
+ <pre>$ rm -f speedtest1.js; make -e emcc_opt='-O2' speedtest1.js</pre>
+ Then reload this page. -O2 seems to consistently produce the fastest results.
+ </li>
+ <li>TODO: add a link in this app which launches the main-thread
+ version with the same flags.</li>
+ </ul>
+ </div>
<style>
#test-output {
white-space: break-spaces;
overflow: auto;
}
+ div#tips { margin-top: 1em; }
#toolbar {
display: flex;
flex-direction: row;
//flags["mmap"] = "SZ MMAP the first SZ bytes of the database file";
flags["multithread"] = "Set multithreaded mode";
flags["nomemstat"] = "Disable memory statistics";
+ flags["nomutex"] = "Open db with SQLITE_OPEN_NOMUTEX";
flags["nosync"] = "Set PRAGMA synchronous=OFF";
flags["notnull"] = "Add NOT NULL constraints to table columns";
//flags["output"] = "FILE Store SQL output in FILE";
}
};
- log("Control-click the flags to (de)select multiple flags.");
- logWarn("\nThe easiest way to try different optimization levels is, from this directory:\n"+
- " $ make clean; make -e emcc_opt='-O2' speedtest1\n"+
- "Then reload this page. -O2 seems to consistently produce the fastest results.\n");
- logWarn('\nAchtung: the Worker thread overhead slightly reduces the speed',
- 'compared to running the same options via speedtest1.html.\n'+
- 'TODO: add a link in this app which launches the main-thread',
- 'version with the same flags.\n');
-
W.onmessage = function(msg){
msg = msg.data;
switch(msg.type){
- case 'ready': log("Worker is ready."); eControls.classList.remove('hidden'); break;
+ case 'ready':
+ log("Worker is ready.");
+ eControls.classList.remove('hidden');
+ break;
case 'stdout': log(msg.data); break;
case 'stdout': logErr(msg.data); break;
case 'run-start':
eControls.disabled = true;
log("Running speedtest1 with argv =",msg.data.join(' '));
break;
- case 'run-end': log("speedtest1 finished.");
+ case 'run-end':
+ log("speedtest1 finished.");
eControls.disabled = false;
// app output is in msg.data
break;
// nicely.
"speedtest1",
"--singlethread",
- //"--stats",
+ "--nomutex",
"--memdb", // note that memdb trumps the filename arg
dbFile
];
-C Experimentally\sadd\s--nomutex\sflag\sto\sspeedtest1\sto\shave\sit\sopen\sdb\swith\sthe\sSQLITE_OPEN_NOMUTEX\sflag.
-D 2022-09-08T19:53:59.576
+C Minor\sbuild\scleanups\sand\stweaks\sin\sthe\sspeedtest1\swasm\sapps.
+D 2022-09-08T20:04:52.074
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
F ext/userauth/userauth.c 7f00cded7dcaa5d47f54539b290a43d2e59f4b1eb5f447545fa865f002fc80cb
F ext/wasm/EXPORTED_FUNCTIONS.fiddle db7a4602f043cf4a5e4135be3609a487f9f1c83f05778bfbdf93766be4541b96
F ext/wasm/EXPORTED_RUNTIME_METHODS.fiddle a004bd5eeeda6d3b28d16779b7f1a80305bfe009dfc7f0721b042967f0d39d02
-F ext/wasm/GNUmakefile 5c566211fe64a45659064bae65e032150e451a0b9dca00be6552f3f6b7252693
+F ext/wasm/GNUmakefile 04e1df08665a81b8815415571cc874176001295a889e649f6ecfea2f6091cfea
F ext/wasm/README.md e1ee1e7c321c6a250bf78a84ca6f5882890a237a450ba5a0649c7a8399194c52
F ext/wasm/api/EXPORTED_FUNCTIONS.sqlite3-api 77ef4bcf37e362b9ad61f9c175dfc0f1b3e571563fb311b96581cf422ee6a8ec
F ext/wasm/api/EXPORTED_RUNTIME_METHODS.sqlite3-api 1ec3c73e7d66e95529c3c64ac3de2470b0e9e7fbf7a5b41261c367cf4f1b7287
F ext/wasm/scratchpad-opfs-worker.html 66c1d15d678f3bd306373d76b61c6c8aef988f61f4a8dd40185d452f9c6d2bf5
F ext/wasm/scratchpad-opfs-worker.js 3ec2868c669713145c76eb5877c64a1b20741f741817b87c907a154b676283a9
F ext/wasm/scratchpad-opfs-worker2.js 5f2237427ac537b8580b1c659ff14ad2621d1694043eaaf41ae18dbfef2e48c0
-F ext/wasm/speedtest1-worker.html 4f8d7391ec17b6fd13f1a1e181436d3331842548fe7cc84e4e322f72850eb97b
+F ext/wasm/speedtest1-worker.html 22938a087c4cf0ef1a8711d675d851f3ca5f25c2ea5a2a68c548c3c032d4b841
F ext/wasm/speedtest1-worker.js 356b9953add4449acf199793db9b76b11ee016021918d8daffd19f08ec68d305
-F ext/wasm/speedtest1.html 02d281c25a8048cce24695bed01ca613d11f40b599cd47f3a18dca8c982d0a15
+F ext/wasm/speedtest1.html 75b5ab41b29188e1c173e443c999ce70058a77f04aa6ba92603b89dc9064f66a
F ext/wasm/split-speedtest1-script.sh a3e271938d4d14ee49105eb05567c6a69ba4c1f1293583ad5af0cd3a3779e205 x
F ext/wasm/sql/000-mandelbrot.sql 775337a4b80938ac8146aedf88808282f04d02d983d82675bd63d9c2d97a15f0
F ext/wasm/sql/001-sudoku.sql 35b7cb7239ba5d5f193bc05ec379bcf66891bce6f2a5b3879f2f78d0917299b5
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P f16c68ee6d5ebb8dec2ab656dbab2ddb5f1d5133153ad553f986b31020adaa38
-R 7f356b1a33873f45424fcff13841218e
+P 45ef576b2ee6369ab1e3aa2ad284764bb334f92a69a33d88b7292bbc0a1b1fda
+R 64ae0ceed9d3a82f7eef9f630fe798ba
U stephan
-Z 0d8d2c17b5d2ef83d66b0d6f4d0cb65c
+Z f95ff8b3ecd08b87fe1868262a4025a0
# Remove this line to create a well-formed Fossil manifest.
-45ef576b2ee6369ab1e3aa2ad284764bb334f92a69a33d88b7292bbc0a1b1fda
\ No newline at end of file
+5240fb4d795dea826f23cf5d2152b519f5a46f49bb2499ea868fa7c7f4ce788b
\ No newline at end of file