> > On Oct 10, 2014, at 16:58, [email protected] wrote: > >> Dear uWSGI community, >> >> I'm an experienced Python web developer but new to both uWSGI and PyPy. >> I'm interested in uWSGI and PyPy because a web application I'm building >> needs to serve a high volume of traffic and will use significant CPU per >> request. >> >> I found the docs at >> http://uwsgi-docs.readthedocs.org/en/latest/PyPy.html but I'm having >> trouble sorting through all the available options. It sounds like I can >> use http://projects.unbit.it/downloads/pypy/libpypy-c-x86_64.so on an >> Ubuntu Trusty 64-bit server to avoid building/translating lbypypy-c >> myself, which would be preferable. >> >> So how can I get from the libpypy-c-x86_64.so I downloaded to a new pypy >> virtualenv which uses that .so, into which I can (pip?) install uWSGI? >> >> Thanks in advance for any help you can provide. > > > I built pypy 2.4.0 from source with --shared, created a virtualenv which > uses it (via "virtualenv -p"), and installed uWSGI into the virtualenv via > pip. When I run "uwsgi --http :9090 --pypy-wsgi-file foobar.py", I get: > > *** Starting uWSGI 2.0.7 (64bit) on [Sun Oct 12 18:49:25 2014] *** > compiled with version: 4.8.2 on 12 October 2014 18:32:19 > os: Linux-3.13.0-37-generic #64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014 > nodename: ip-... > machine: x86_64 > clock source: unix > detected number of CPU cores: 4 > current working directory: /home/ubuntu > detected binary path: /home/ubuntu/pypyvenv/bin/uwsgi > !!! no internal routing support, rebuild with pcre support !!! > *** WARNING: you are running uWSGI without its master process manager *** > your processes number limit is 59758 > your memory page size is 4096 bytes > detected max file descriptor number: 1024 > lock engine: pthread robust mutexes > thunder lock: disabled (you can enable it with --thunder-lock) > uWSGI http bound on :9090 fd 4 > spawned uWSGI http 1 (pid: 22076) > uwsgi socket 0 bound to TCP address 127.0.0.1:44402 (port auto-assigned) > fd 3 > RPython traceback: > File "rpython_jit_metainterp_compile.c", line 22725, in > send_loop_to_backend > File "rpython_jit_backend_x86_assembler.c", line 2181, in > Assembler386_assemble_loop > File "rpython_jit_backend_x86_assembler.c", line 5376, in > Assembler386__assemble > File "rpython_jit_backend_x86_regalloc.c", line 1963, in > RegAlloc_walk_operations > File "rpython_jit_backend_x86_assembler.c", line 33553, in > Assembler386_threadlocalref_get > Fatal RPython error: AssertionError > > > In case it's relevant, when I run "uwsgi --print-sym uwsgi_pypy_setup" I > get no output. When I run "uwsgi --pypy-setup pypy_setup.py --print-sym > uwsgi_pypy_setup" (where pypy_setup.py is from > https://raw.githubusercontent.com/unbit/uwsgi/2.0.7/plugins/pypy/pypy_setup.py) > I also get no output. > > Not sure what to try next. Can anyone please help? >
I need to ask you (and others people wanting to try uWSGI+pypy) to wait a couple of weeks as Maciej FijaĆkowski (pypy core developer) is working on having libpypy built-in by default in official pypy binaries (it is a sponsored work, so it should be done fast). This will solve a lot of issues and will allow us to work better (and faster) on the plugin (the objective is having it on par as CPython before 2.1). -- Roberto De Ioris http://unbit.it _______________________________________________ uWSGI mailing list [email protected] http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi
