Re: JIT me some speed!

2001-12-26 Thread Nicholas Clark
On Fri, Dec 21, 2001 at 12:03:51AM +, Tom Hughes wrote: In message [EMAIL PROTECTED] Dan Sugalski [EMAIL PROTECTED] wrote: To run a program with the JIT, pass test_parrot the -j flag and watch it scream. Well, scream if you're on x86 Linux or BSD (I get a speedup on

Re: .ops metadata [was: Re: JIT me some speed!]

2001-12-26 Thread Michael Fischer
On Mon, Dec 24, Gregor N. Purdy wrote: Nicholas -- Parrot_set_i_i(in,out): \x8b \x0d IR2 \x89 \x0d IR1 I'm tempted to push the specification of this information all the way back to the syntax of .ops files, since the code that lives there should behave the same wrt read/write on args.

Re: .ops metadata [was: Re: JIT me some speed!]

2001-12-26 Thread Gregor N. Purdy
Jason -- Making the distinction between the three cases enables a number of optimizations of native code based on analysing data flow. 'in' would be good as an implicit default, as many PMC opcodes will not overwrite any PMC registers. An optimizing native code generator (whether static

Re: JIT me some speed!

2001-12-24 Thread Daniel Grunblatt
I think we should leave all that for an optimizer. Daniel Grunblatt. On Mon, 24 Dec 2001, Nicholas Clark wrote: On Fri, Dec 21, 2001 at 12:03:51AM +, Tom Hughes wrote: It looks like it is going to need some work before it can work for other instruction sets though, at least for RISC

Re: JIT me some speed!

2001-12-24 Thread Daniel Grunblatt
Oh, and by the BTW, I already tried you fastest example last week and got 50x speed up, but that's works only for mops, so ... Daniel Grunblatt. On Mon, 24 Dec 2001, Nicholas Clark wrote: On Fri, Dec 21, 2001 at 12:03:51AM +, Tom Hughes wrote: It looks like it is going to need some

.ops metadata [was: Re: JIT me some speed!]

2001-12-24 Thread Gregor N. Purdy
Nicholas -- Parrot_set_i_i(in,out): \x8b \x0d IR2 \x89 \x0d IR1 I'm tempted to push the specification of this information all the way back to the syntax of .ops files, since the code that lives there should behave the same wrt read/write on args. Dan likes C-like syntax as much as possible in

RE: .ops metadata [was: Re: JIT me some speed!]

2001-12-24 Thread Brent Dax
Gregor N. Purdy: # Parrot_set_i_i(in,out): \x8b \x0d IR2 \x89 \x0d IR1 # # I'm tempted to push the specification of this information all the way # back to the syntax of .ops files, since the code that lives there # should behave the same wrt read/write on args. # # Dan likes C-like syntax as

Re: JIT me some speed!

2001-12-21 Thread Gregor N. Purdy
Dan and Michael -- $ ./test_parrot -j examples/assembly/mops.pbc Illegal instruction That's not supposed to happen is it? Its Linux/PowerPC, so maybe it is supposed to happen. It's sort of supposed to happen. It shouldn't work, at least--we need better error checking and such,

Re: JIT me some speed!

2001-12-21 Thread Gregor N. Purdy
All -- $ ./test_parrot -j examples/assembly/mops.pbc Illegal instruction That's not supposed to happen is it? Its Linux/PowerPC, so maybe it is supposed to happen. It's sort of supposed to happen. It shouldn't work, at least--we need better error checking and such, so

Re: JIT me some speed!

2001-12-21 Thread Daniel Grunblatt
On Fri, 21 Dec 2001, Tom Hughes wrote: In message [EMAIL PROTECTED] Dan Sugalski [EMAIL PROTECTED] wrote: To run a program with the JIT, pass test_parrot the -j flag and watch it scream. Well, scream if you're on x86 Linux or BSD (I get a speedup on mops.pbc of 35x) but it's

Re: JIT me some speed!

2001-12-21 Thread Tom Hughes
In message [EMAIL PROTECTED] Daniel Grunblatt [EMAIL PROTECTED] wrote: On Fri, 21 Dec 2001, Tom Hughes wrote: I suspect it is also rather questionable to call system calls directly rather than going via their C library veneers - that is even more true when you come to things

Re: JIT me some speed!

2001-12-21 Thread Daniel Grunblatt
Don't forget that (if I'm missing somthing) by the time that pbc2c.pl work with all the ops it will be much slower than the jit. Daniel Grunblatt. On 21 Dec 2001, Tom Hughes wrote: In message [EMAIL PROTECTED] Daniel Grunblatt [EMAIL PROTECTED] wrote: On Fri, 21 Dec 2001, Tom

Re: JIT me some speed!

2001-12-20 Thread Tom Hughes
In message [EMAIL PROTECTED] Dan Sugalski [EMAIL PROTECTED] wrote: To run a program with the JIT, pass test_parrot the -j flag and watch it scream. Well, scream if you're on x86 Linux or BSD (I get a speedup on mops.pbc of 35x) but it's a darned good place to start. It does seem to

Re: JIT me some speed!

2001-12-20 Thread Michael G Schwern
Dan Sugalski [EMAIL PROTECTED] wrote: To run a program with the JIT, pass test_parrot the -j flag and watch it scream. Well, scream if you're on x86 Linux or BSD (I get a speedup on mops.pbc of 35x) but it's a darned good place to start. $ ./test_parrot -j examples/assembly/mops.pbc Illegal

Re: JIT me some speed!

2001-12-20 Thread Dan Sugalski
On Thu, 20 Dec 2001, Michael G Schwern wrote: Dan Sugalski [EMAIL PROTECTED] wrote: To run a program with the JIT, pass test_parrot the -j flag and watch it scream. Well, scream if you're on x86 Linux or BSD (I get a speedup on mops.pbc of 35x) but it's a darned good place to start. $

JIT me some speed!

2001-12-19 Thread Dan Sugalski
Thanks to the work of Daniel Grunblatt, we now have JIT capabilities in parrot. It's in the latest CVS, ready for your use and abuse. To run a program with the JIT, pass test_parrot the -j flag and watch it scream. Well, scream if you're on x86 Linux or BSD (I get a speedup on mops.pbc of