On Mon, Sep 21, 2009 at 1:53 PM, Mark <godef...@gmail.com> wrote: > I've currently got a loaner high-performance flash-based "SSD" (let's > just say it doesn't connect to any disk controllers) that I'm testing > for performance. I've run my application against it, and I believe that > I should see numbers MUCH higher than I do. When I run my test app on a > normal SATA 7200 RPM disk, I get a certain performance, and on the "SSD" > I get about 1/10th that speed. On an array of SAS disks I get numbers > that are about 5x faster than my SATA disk, so my software itself isn't > (I believe) the bottleneck. > > I'm wondering if anyone has any tips for "optimizing" for this sort of > storage solution. > > Also, if anyone has any quick-and-dirty test setups they'd like me to > run through on this rig, just let me know :) >
SSDs get their speed by striping together multiple slower NAND controllers. If you're getting 1/10th the speed, it seems plausible that you are only accessing a single stripe at once. Optimize your app to spread access across multiple stripes. Using a larger page size and/or performing concurrent reads might help. And of course, make sure you're using transactions to group operations. -- Cory Nelson http://int64.org _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users