Hi Dmitry, Thanks for the info. Probably I'm just too curious :) Please count on me once it becomes relevant to hand out some part.
Regards Anatol > -----Original Message----- > From: Dmitry Stogov [mailto:dmi...@zend.com] > Sent: Wednesday, October 26, 2016 1:31 PM > To: Anatol Belski <anatol....@belski.net>; 'PHP internals list' > <internals@lists.php.net> > Cc: Zeev Suraski <z...@zend.com>; Xinchen Hui <xinche...@zend.com> > Subject: Re: [PHP-DEV] JIT for PHP project > > Hi Anatol, > > > The project is in the very early development stage. > > Now, JIT passes almost all PHPT tests, makes 3 times speed-up on bench.php > and no significant difference on real-life apps (+/-5% depended on opcache.jit > setting. > > We are hardly working, implementing new ideas... > > > I think it's too early to port this to Windows. Once, we think, we are ready, I'll > ask your help. > > I suppose we won't need ELF->COFF porting, because we construct ELF objects > just to debug JITed code in GDB and read PHP ELF object for simple symbol > resolution in disassembler (most probably, both won't work on Windows > anyway). > > zend_jit_x86.dasc will have to be adopted to support Windows calling > convention, of course. > > > Thanks. Dmitry. > > > > > > ________________________________ > From: Anatol Belski <anatol....@belski.net> > Sent: Wednesday, October 26, 2016 1:49:49 PM > To: Dmitry Stogov; 'PHP internals list' > Cc: Zeev Suraski; Xinchen Hui > Subject: RE: [PHP-DEV] JIT for PHP project > > Hi Dmitry, > > > -----Original Message----- > > From: Dmitry Stogov [mailto:dmi...@zend.com] > > Sent: Thursday, September 1, 2016 1:57 PM > > To: PHP internals list <internals@lists.php.net> > > Cc: Zeev Suraski <z...@zend.com>; Xinchen Hui <xinche...@zend.com> > > Subject: [PHP-DEV] JIT for PHP project > > > > Hi @internals, > > > > I'm glad to say that we have started a new JIT for PHP project and > > hope to deliver some useful results for the next PHP version (probably 8.0). > > We are very early in the process and for now there isn't any real > performance > > improvement yet. So far we spent just 2 weeks mainly working on JIT > > infrastructure for x86/x86_64 Linux (machine code generation, > disassembling, > > debugging, profiling, etc), and we especially made the JIT > > code-generator > as > > minimal and simple as possible. The current state, is going to be used > > as > a > > starting point for research of different JIT approaches and their > usability for PHP. > > > > The code is available at: > > https://github.com/zendtech/php-src/tree/jit- > > dynasm/ext/opcache/jit > > > > The sources may be built and tested as regular PHP (no any special > external > > dependencies required). > > JIT itself is implemented as a part of Opcache. > > You may try it in action: > > > > sapi/cli/php -d opcache.jit_buffer_size=32M Zend/bench.php > > sapi/cli/php -d opcache.jit_buffer_size=32M -d opcache.jit_debug=1 > > Zend/bench.php 2>&1 | less > > > > As I mentioned we didn't try to achieve any real performance > > improvement > yet, > > although we do currently see 20% speedup on bench.php, but a bit of a > > slowdown on real-life apps. > > > > Wish us luck :) > > > I just wanted to ask about the status. After starting to do some basic work > https://github.com/zendtech/php-src/compare/jit-dynasm...weltling:jit-dynasm > I've stumbled upon a couple of things > > - in zend_elf.c, the current binary that loads php is being read in, I guess this part > needs to be ported to parse the Windows COFF format > - with DynASM, seems zend_jit_x86.dasc will need to be extended for some > compatibility, please correct if I'm wrong > > Regarding these, maybe you've one or another tip for me? Is this still relevant? > Or I jump into it too early? > > Thanks > > anatol > > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php