Commit Graph

38 Commits

Author SHA1 Message Date
Dan Peterson
f2abd009c3 generator: use sqlite 3.35.0 2021-03-13 09:13:28 -04:00
Dan Peterson
e11960029f generator: use ccgo/v3/lib
Instead of running a ccgo binary, use ccgo/v3/lib directly.

This makes the generation process more contained since the dependency
on ccgo/v3/lib can be tracked in go.mod.
2021-03-08 18:53:41 -04:00
Dan Peterson
2d6e462ccf add darwin/arm64 support 2021-03-08 08:58:12 -04:00
Jan Mercl
35e14d337f linux/amd64: regenerate 2021-02-21 22:21:30 +01:00
Jan Mercl
f5bcea6543 split production and testing 2021-01-30 01:09:04 +01:00
Jan Mercl
ec87829717 -volatile: add saved_cnt 2021-01-26 22:32:10 +01:00
Jan Mercl
8ee5bd03d8 volatile: regenerate all targetets, updates #43
Solving the date race rooted in testfixture comes with a price tag on
some benchmarks. The separation of test and production builds has to be
reconsidered probably.

benchmark                                           old ns/op      new ns/op      delta
BenchmarkInsertComparative/sqliteOnDisk1e2-24       1895381        9582508        +405.57%
BenchmarkInsertComparative/sqliteOnDisk1e3-24       5335603        23483554       +340.13%
BenchmarkInsertComparative/sqliteOnDisk1e4-24       41443434       62321908       +50.38%
BenchmarkReading1/sqliteInMemory1e1-24              4164           3954           -5.04%
BenchmarkReading1/sqliteOnDisk1e5-24                41833294       40412312       -3.40%
BenchmarkInsertComparative/sqliteOnDisk1e5-24       409706232      423913432      +3.47%
BenchmarkInsertComparative/sqliteInMemory1e3-24     4038611        4121762        +2.06%
BenchmarkReading1/sqliteOnDisk1e2-24                35478          34835          -1.81%
BenchmarkInsertComparative/sqliteInMemory1e5-24     393955115      400514447      +1.66%
BenchmarkInsertComparative/sqliteOnDisk1e6-24       4075058065     4129740614     +1.34%
BenchmarkReading1/sqliteOnDisk1e6-24                420696738      425759864      +1.20%
BenchmarkInsertComparative/sqliteInMemory1e6-24     4061846465     4025592721     -0.89%
BenchmarkInsertComparative/sqliteOnDisk1e1-24       1374103        1363824        -0.75%
BenchmarkInsertComparative/sqliteInMemory1e1-24     47396          47134          -0.55%
BenchmarkReading1/sqliteOnDisk1e4-24                4089560        4072859        -0.41%
BenchmarkReading1/sqliteInMemory1e5-24              41018960       41178057       +0.39%
BenchmarkReading1/sqliteInMemory1e3-24              413754         412557         -0.29%
BenchmarkReading1/sqliteOnDisk1e1-24                4105           4116           +0.27%
BenchmarkReading1/sqliteOnDisk1e3-24                406788         407602         +0.20%
BenchmarkReading1/sqliteInMemory1e4-24              4083458        4091301        +0.19%
BenchmarkReading1/sqliteInMemory1e2-24              35648          35586          -0.17%
BenchmarkInsertComparative/sqliteInMemory1e4-24     40525081       40486065       -0.10%
BenchmarkReading1/sqliteInMemory1e6-24              416605953      416801419      +0.05%
BenchmarkInsertComparative/sqliteInMemory1e2-24     418877         419052         +0.04%

benchmark                                           old MB/s       new MB/s       speedup
BenchmarkInsertComparative/sqliteOnDisk1e2-24       52759.83       10435.68       0.20x
BenchmarkInsertComparative/sqliteOnDisk1e3-24       187420.25      42582.99       0.23x
BenchmarkInsertComparative/sqliteOnDisk1e4-24       241292.75      160457.22      0.66x
BenchmarkReading1/sqliteInMemory1e1-24              2401715.49     2528774.04     1.05x
BenchmarkReading1/sqliteOnDisk1e5-24                2390440.47     2474493.44     1.04x
BenchmarkInsertComparative/sqliteOnDisk1e5-24       244077.32      235897.22      0.97x
BenchmarkInsertComparative/sqliteInMemory1e3-24     247609.90      242614.72      0.98x
BenchmarkReading1/sqliteOnDisk1e2-24                2818677.25     2870644.72     1.02x
BenchmarkInsertComparative/sqliteInMemory1e5-24     253836.02      249678.88      0.98x
BenchmarkInsertComparative/sqliteOnDisk1e6-24       245395.28      242145.96      0.99x
BenchmarkReading1/sqliteOnDisk1e6-24                2377009.16     2348741.82     0.99x
BenchmarkInsertComparative/sqliteInMemory1e6-24     246193.45      248410.62      1.01x
BenchmarkInsertComparative/sqliteOnDisk1e1-24       7277.47        7332.32        1.01x
BenchmarkInsertComparative/sqliteInMemory1e1-24     210986.33      212161.04      1.01x
BenchmarkReading1/sqliteOnDisk1e4-24                2445250.84     2455277.48     1.00x
BenchmarkReading1/sqliteInMemory1e5-24              2437897.03     2428477.88     1.00x
BenchmarkReading1/sqliteInMemory1e3-24              2416893.93     2423908.77     1.00x
BenchmarkReading1/sqliteOnDisk1e1-24                2435771.89     2429343.61     1.00x
BenchmarkReading1/sqliteOnDisk1e3-24                2458284.16     2453375.13     1.00x
BenchmarkReading1/sqliteInMemory1e4-24              2448904.99     2444210.29     1.00x
BenchmarkReading1/sqliteInMemory1e2-24              2805169.43     2810106.83     1.00x
BenchmarkInsertComparative/sqliteInMemory1e4-24     246760.76      246998.56      1.00x
BenchmarkReading1/sqliteInMemory1e6-24              2400349.76     2399224.08     1.00x
BenchmarkInsertComparative/sqliteInMemory1e2-24     238733.61      238633.69      1.00x

benchmark                                           old allocs     new allocs     delta
BenchmarkInsertComparative/sqliteInMemory1e6-24     6999753        6999749        -0.00%
BenchmarkInsertComparative/sqliteOnDisk1e6-24       6999762        6999761        -0.00%

benchmark                                           old bytes     new bytes     delta
BenchmarkInsertComparative/sqliteOnDisk1e2-24       12960         12962         +0.02%
BenchmarkReading1/sqliteInMemory1e4-24              156432        156440        +0.01%
BenchmarkInsertComparative/sqliteInMemory1e6-24     136003776     135998736     -0.00%
BenchmarkInsertComparative/sqliteOnDisk1e3-24       134113        134115        +0.00%
BenchmarkReading1/sqliteOnDisk1e5-24                1596446       1596438       -0.00%
BenchmarkInsertComparative/sqliteInMemory1e4-24     1358039       1358033       -0.00%
BenchmarkInsertComparative/sqliteOnDisk1e4-24       1358120       1358125       +0.00%
BenchmarkInsertComparative/sqliteOnDisk1e5-24       13598160      13598202      +0.00%
BenchmarkReading1/sqliteOnDisk1e6-24                15996506      15996549      +0.00%
BenchmarkReading1/sqliteInMemory1e6-24              15996504      15996528      +0.00%
BenchmarkInsertComparative/sqliteInMemory1e5-24     13598090      13598074      -0.00%
BenchmarkInsertComparative/sqliteOnDisk1e6-24       135998848     135998800     -0.00%
2021-01-26 20:59:32 +01:00
Jan Mercl
630452a9b7 regenerate all targets, enable darwin build (only simple tests pass) 2020-12-26 20:52:19 +01:00
Jan Mercl
b89c2c19aa enable windows/{amd64,386} build 2020-12-21 21:10:07 +01:00
Jan Mercl
f18e142e46 update dependencies, regenerate all targets 2020-12-21 14:09:24 +01:00
Jan Mercl
f228816300 support linux/arm{,64} 2020-09-13 15:31:23 +02:00
Jan Mercl
0d7a764447 add linux/386 support 2020-09-08 13:28:55 +02:00
Jan Mercl
e662a135d1 release 1.4.0 2020-08-26 23:31:54 +02:00
Jan Mercl
43c865ce5d regenerate and update dependencies 2020-08-04 17:15:32 +02:00
Jan Mercl
1349149922 use crt v3.24.9 2020-07-31 14:18:38 +02:00
Jan Mercl
3337c85b5e 103 errors out of 202628 tests on Linux 64-bit little-endian 2020-07-30 17:13:42 +02:00
Jan Mercl
2491c1ae5a 575 errors out of 200676 tests on Linux 64-bit little-endian
All memory allocations freed - no leaks
2020-07-28 18:42:57 +02:00
Jan Mercl
b406626c64 release v1.4.0-beta1 2020-07-26 22:36:18 +02:00
Jan Mercl
ef38ac9c3b use sqlite3_unlock_notify, fixes #20. 2019-12-31 16:46:08 +01:00
Jan Mercl
6efd3c7000 v1.1.0-alpha.2 2019-12-26 17:24:51 +01:00
Jan Mercl
58026126c2 support SQLite's multi-thread model 2019-12-19 15:58:58 +01:00
Jan Mercl
0bd6d67fef prepare pre-alpha release 2019-12-18 17:51:11 +01:00
Jan Mercl
89fd60bf68 Make modernc.org the repository root 2018-11-06 18:03:25 +01:00
Jan Mercl
0757a22337 Use cznic/ccgo/crt instead of cznic/crt.
modified:   generator.go
	modified:   internal/bin/bin_linux_386.go
	modified:   internal/bin/bin_linux_amd64.go
	modified:   internal/bin/bin_windows_386.go
	modified:   internal/bin/bin_windows_amd64.go
	modified:   internal/mptest/mptest_linux_386.go
	modified:   internal/mptest/mptest_linux_amd64.go
	modified:   internal/threadtest1/threadtest1_linux_386.go
	modified:   internal/threadtest1/threadtest1_linux_amd64.go
	modified:   internal/threadtest2/threadtest2_linux_386.go
	modified:   internal/threadtest2/threadtest2_linux_amd64.go
	modified:   internal/threadtest3/threadtest3_linux_386.go
	modified:   internal/threadtest3/threadtest3_linux_amd64.go
	modified:   internal/threadtest4/threadtest4_linux_386.go
	modified:   internal/threadtest4/threadtest4_linux_amd64.go
	modified:   sqlite.go
2018-04-10 10:33:55 +02:00
Jan Mercl
d7e92b1258 Regenerate Linux/amd64 using latest CCGO.
modified:   generator.go
	modified:   internal/bin/bin_linux_amd64.go
	modified:   internal/mptest/mptest_linux_amd64.go
	modified:   internal/threadtest1/threadtest1_linux_amd64.go
	modified:   internal/threadtest2/threadtest2_linux_amd64.go
	modified:   internal/threadtest3/threadtest3_linux_amd64.go
	modified:   internal/threadtest4/threadtest4_linux_amd64.go
2017-07-15 14:51:15 +02:00
Jan Mercl
4c91ab146a Update generator.go.
modified:   generator.go
	modified:   main.c
2017-07-14 19:20:46 +02:00
Jan Mercl
4becaacb97 Regenerate Linux/amd64 using latest CCGO.
modified:   generator.go
	modified:   internal/bin/bin_linux_amd64.go
	modified:   internal/mptest/mptest_linux_amd64.go
	modified:   internal/threadtest1/threadtest1_linux_amd64.go
	modified:   internal/threadtest2/threadtest2_linux_amd64.go
	modified:   internal/threadtest3/threadtest3_linux_amd64.go
	modified:   internal/threadtest4/threadtest4_linux_amd64.go
2017-07-08 17:10:53 +02:00
Jan Mercl
a46bafc8c8 Partially fix TestThread4.
modified:   generator.go
	modified:   internal/sqlite.org/sqlite-src-3190300/test/threadtest1.c
	new file:   internal/sqlite.org/sqlite-src-3190300/test/threadtest4.c
	modified:   internal/threadtest1/threadtest1_linux_amd64.go
	modified:   internal/threadtest4/threadtest4_linux_amd64.go
	modified:   z_linux_test.go
2017-07-07 17:45:24 +02:00
Jan Mercl
3f755c812f Regenerate Linux using latest CCGO.
modified:   generator.go
	modified:   internal/bin/bin_linux_amd64.go
	modified:   internal/mptest/mptest_linux_amd64.go
	new file:   internal/sqlite.org/sqlite-src-3190300/test/threadtest1.c
	modified:   internal/threadtest1/threadtest1_linux_amd64.go
	modified:   internal/threadtest2/threadtest2_linux_amd64.go
	modified:   internal/threadtest3/threadtest3_linux_amd64.go
	modified:   z_linux_test.go
2017-07-06 17:30:48 +02:00
Jan Mercl
2aa5e95243 Add TestThread3 (does not yet pass). Updates #15.
modified:   Makefile
	modified:   all_test.go
	modified:   generator.go
	modified:   internal/bin/bin_linux_386.go
	modified:   internal/bin/bin_linux_amd64.go
	new file:   internal/threadtest3/threadtest3_linux_386.go
	new file:   internal/threadtest3/threadtest3_linux_amd64.go
2017-07-03 23:36:03 +02:00
Jan Mercl
5e8a085cfb Add a couple of tests. Build only on linux, do not pass.
modified:   Makefile
	modified:   all_test.go
	modified:   generator.go
	modified:   internal/bin/bin_linux_386.go
	modified:   internal/bin/bin_linux_amd64.go
	new file:   internal/mptest/mptest_linux_386.go
	new file:   internal/mptest/mptest_linux_amd64.go
	new file:   internal/threadtest1/threadtest1_linux_386.go
	new file:   internal/threadtest1/threadtest1_linux_amd64.go
	new file:   internal/threadtest2/threadtest2_linux_386.go
	new file:   internal/threadtest2/threadtest2_linux_amd64.go
	new file:   internal/threadtest4/threadtest4_linux_386.go
	new file:   internal/threadtest4/threadtest4_linux_amd64.go
	modified:   main.c
	new file:   sqlite.h
	new file:   testdata/mptest/config01.test
	new file:   testdata/mptest/config02.test
	new file:   testdata/mptest/crash01.test
	new file:   testdata/mptest/crash02.subtest
	new file:   testdata/mptest/multiwrite01.test
2017-07-01 23:04:53 +02:00
Jan Mercl
8370d1a12e Regenerate bin_linux_*.go using latest CCGO.
modified:   generator.go
	modified:   internal/bin/bin_linux_386.go
	modified:   internal/bin/bin_linux_amd64.go
2017-06-29 23:16:00 +02:00
Jan Mercl
11216f7304 Do not use fixed heap on Linux. Updates #12.
modified:   all_test.go
	modified:   generator.go
	modified:   internal/bin/bin_linux_386.go
	modified:   internal/bin/bin_linux_amd64.go
	modified:   main.c
	modified:   sqlite.go
	modified:   sqlite_go18.go
2017-06-13 15:18:34 +02:00
Steffen
6b30b8701e switch windows to CRT, throw out old virtual 2017-06-10 14:02:32 +02:00
Jan Mercl
05b533496a Use usleep.
modified:   all_linux_test.go
	modified:   generator.go
	modified:   internal/bin/bin_linux_386.go
	modified:   internal/bin/bin_linux_amd64.go
	modified:   sqlite.go
2017-06-06 14:55:48 +02:00
Jan Mercl
8c183b526b Release the {cgo,VM}-free Linux/Intel version.
modified:   Makefile
	new file:   all_linux_test.go
	renamed:    all_test.go -> all_test_windows.go
	new file:   doc.go
	new file:   generate_linux.go
	new file:   generate_windows.go
	modified:   generator.go
	new file:   generator_windows.go
	modified:   internal/bin/bin_linux_386.go
	modified:   internal/bin/bin_linux_amd64.go
	modified:   main.c
	modified:   sqlite.go
	modified:   sqlite_go18.go
	new file:   sqlite_windows.go
2017-06-05 20:13:10 +02:00
Steffen
5f0f14b4ac fix sqlite build for windows 2017-04-26 22:48:16 +02:00
Jan Mercl
ed3807ab47 Add Initial content. 2017-04-21 01:17:29 +02:00