On 28 Mar 2013, at 9:54pm, Nico Williams <[email protected]> wrote:

> Question: would it be better to optimize key and value encodings more
> for CPU and less for space?

Don't forget that SQLite is not solely intended for running on a desktop 
computer.  Almost all smartphones use SQLite for many purposes.  My TV recorder 
uses SQLite for keeping lists of channels and recorded programmes.  SQLite is 
used inside many GPS units to maintain tracks and Points Of Interest.

The above use CPUs of very different designs.  They're so different that 
optimizing for one sort of CPU is almost the opposite of optimizing for another 
sort.  Some CPUs have big fat 64-bit databusses, others need to do everything 
in 8-bit.  (I don't know of anything that still works in 4-bit, but that's just 
a reason someone will post a follow-up telling me of one.)  Some CPUs are 
optimized for tiny die and minimum power-usage and concentrate on single-stream 
RISC.  Others are optimized for speed and do pipelining and speculative 
branch-processing (don't ask, it's horrible).

So while it's easy to optimize for the size of a database file, optimizing for 
unknown CPU is mostly just a question of keeping things as simple as possible.  
Which is where SQLite wins out anyway, because that's an advantage of its 
'lite' design.

Simon.
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to