Does multiple cores help? I thought sqlite is single threaded
Discussion
Sqlite locks on each access afaik, so you're probably right.
Not in WAL mode: readers and writers can proceed without blocking one another. Checkpoints can be an issue for concurrency, but that can be worked around.
SQLite can use many cores, and even multiple processes. There are some gotchas, but generally speaking it can use every core available for queries (especially reads).