On Fri, Dec 14, 2012 at 7:25 PM, Eleytherios Stamatogiannakis <[email protected]> wrote: > Here is the synthetic benchmark. > > To run it you'll need latest madIS. You can clone it using: > > hg clone https://code.google.com/p/madis/ > > For running the test you can use: > > CPython 2.7 + APSW: > > https://code.google.com/p/apsw/ > > Or pypy + APSW (you'll need to clone APSW for it to build on pypy): > > hg clone https://code.google.com/p/apsw/ > > Or pypy + MSPW. You'll find attached a "mspw.py". To use it *rename* it to > "apsw.py" and put it in pypy's "site-packages" directory. For MSPW to work > in pypy, you'll also need CFFI and "libsqlite3" installed. > > Here i should note, that MSPW is in a extremely rough state. Our main focus > at this time is to find out how fast we can make it go. So right now MSPW > doesn't do much error checking. Expect segmentation faults if you try a > query in mterm and something is wrong with the query. > > To run the test with pypy/python: > > pypy mterm.py < mspw_bench.sql > > or > > python mterm.py < mspw_bench.sql > > For some reason pypy + APSW throws an exception when it finishes running > mspw_bench, but the timings should be reliable. > > The timings of "mspw_bench" that we get are: > > CPython 2.7 + APSW: ~ 1.5 sec > pypy + APSW: ~ 9 sec > pypy + MSPW: ~4.5 sec > > There are two ways to adjust the processing load of mspw_bench. > > One is to change the value in "range(xxxxx)". This will in essence create a > bigger/smaller "synthetic text". This puts more pressure on CPython's/pypy's > side. > > The other way is to adjust the window size of textwindow(t, xx, xx). This > puts more pressure on the wrapper (APSW/MSPW) infrastructure because it > changes the number of columns that CPython/pypy have to send to SQLite (they > are send on value at a time). > > Both Ioannis Foufoulas and me are available to help with the benchmark. > > Many many thanks, > > lefteris. > > > > _______________________________________________ > pypy-dev mailing list > [email protected] > http://mail.python.org/mailman/listinfo/pypy-dev >
Hi. For what is worth roughly 1/3 of the time is spent importing all the things. This is done in the compilation step in the ASPW, so please try running the select few times. Another slightly worrying thing is that a lot of time is spent doing utf8 decoding. Can you explain what in the SQL statement requires UTF8 conversion? Cheers, fijal _______________________________________________ pypy-dev mailing list [email protected] http://mail.python.org/mailman/listinfo/pypy-dev
