Live data from Hacker News

Speeding up PHP with the HipHop VM

facebook.com

111–120 of 122 posts

Re: Speeding up PHP with the HipHop VM

#111

Earlier quoted context omitted.

As noted elsewhere in this thread, a stack-based design typically produces more compact bytecode. Compactness was a concern for us because of the size of FB's PHP code base. Also, generally speaking a stack-based design tends to be easier to deal with when working to get a prototype VM up and running quickly. Many of the advantages of register-based designs (ability to optimize by rewriting the program at the bytecod…

Makes total sense, thanks! Would using a register-based bytecode not have been useful for the x64 JIT?

Check out our HHIR work. It's an SSA-based IR, that gets us most of the advantages of a register representation. But it is at a much lower level than the bytecode.

Re: Speeding up PHP with the HipHop VM

#112
post #109

Earlier quoted context omitted.

This is a discussion forum, not a court of law. I'm not about to trawl through 5 or 6 years of reddit and hacker news comments to find an exact quote. If you believe the shootout results can reliably show that one language is faster than another, say so. Otherwise, de facto you are saying you cant rely on the results.

People here are smart enough to understand that you want to claim "you cant rely on the results" and to make your claim seem stronger you put your words in my mouth.

Who's putting words in who's mouth now?

Re: Speeding up PHP with the HipHop VM

#113
post #109

Earlier quoted context omitted.

People here are smart enough to understand that you want to claim "you cant rely on the results" and to make your claim seem stronger you put your words in my mouth.

Who's putting words in who's mouth now?

You told us "you cant rely on the results" and gave emphatic support to that claim -- "Which is definitely true."

http://news.ycombinator.com/item?id=4851984

Your words -- not mine.

Re: Speeding up PHP with the HipHop VM

#114
post #34

Earlier quoted context omitted.

While you are very kind to say so, even the original Hiphop blew past what phc could do. Importantly, phc did not support the full PHP language (we had basic object support, and no support for magic methods). There were two cool things about phc: that it had a really advanced static analyzer, and that it compiled to modules compatible with zend. However, these are somewhat mutually exclusive, and making them work wel…

Slightly OT, sorry. phc was such a nice project, and vastly unappreciated. Your cleanup of PHP's grammar was a piece of art which I spend a long time perusing through and trying to understand! phc could have largely benefited the PHP community as a whole and it's such a shame it couldn't gain (enough) traction! Never got a chance to say thx, so THX!

Wow, thanks! John and I spent a long time thinking about it :)

Re: Speeding up PHP with the HipHop VM

#115
post #113

Earlier quoted context omitted.

Who's putting words in who's mouth now?

You told us "you cant rely on the results" and gave emphatic support to that claim -- "Which is definitely true." http://news.ycombinator.com/item?id=4851984 Your words -- not mine.

You're going a long way to avoid saying that you can rely on the results. If you felt we could, this discussion would be over a long time ago.

I'm stopping this dance here. Feel free to make a claim about the reliability of the results, and whether you can use them to say that one language is faster than another. Then we can dance some more, but otherwise I'm out.

Re: Speeding up PHP with the HipHop VM

#116
post #113

Earlier quoted context omitted.

You told us "you cant rely on the results" and gave emphatic support to that claim -- "Which is definitely true." http://news.ycombinator.com/item?id=4851984 Your words -- not mine.

You're going a long way to avoid saying that you can rely on the results. If you felt we could, this discussion would be over a long time ago. I'm stopping this dance here. Feel free to make a claim about the reliability of the results, and whether you can use them to say that one language is faster than another. Then we can dance some more, but otherwise I'm out.

You can rely on the results, the results are what they claim to be on the home page -- "the time taken for this task, by this program, when compiled with this compiler, with these options, on this machine, with these workloads."

> Feel free to make a claim...

The only point of "this dance" was to help people understand that you are putting words into my mouth.

Re: Speeding up PHP with the HipHop VM

#117
post #113

Earlier quoted context omitted.

You told us "you cant rely on the results" and gave emphatic support to that claim -- "Which is definitely true." http://news.ycombinator.com/item?id=4851984 Your words -- not mine.

You're going a long way to avoid saying that you can rely on the results. If you felt we could, this discussion would be over a long time ago. I'm stopping this dance here. Feel free to make a claim about the reliability of the results, and whether you can use them to say that one language is faster than another. Then we can dance some more, but otherwise I'm out.

[deleted]

Re: Speeding up PHP with the HipHop VM

#118
post #116

Earlier quoted context omitted.

You're going a long way to avoid saying that you can rely on the results. If you felt we could, this discussion would be over a long time ago. I'm stopping this dance here. Feel free to make a claim about the reliability of the results, and whether you can use them to say that one language is faster than another. Then we can dance some more, but otherwise I'm out.

You can rely on the results, the results are what they claim to be on the home page -- "the time taken for this task, by this program, when compiled with this compiler, with these options, on this machine, with these workloads." > Feel free to make a claim... The only point of "this dance" was to help people understand that you are putting words into my mouth.

Exactly. You've said it yourself - you cannot rely on the results to tell if a language is faster than another. That was the original context of my claim, and you are admitting it yourself.

Re: Speeding up PHP with the HipHop VM

#119
post #67
post #57

Earlier quoted context omitted.

Java's HotSpot is a stack machine, AFAIK. Dalvik is a register machine, but I wouldn't want to point to that as a positive. ;)

Internally, Hotspot doesn't use a stack representation. It converts it to an IR (internal representation) which is not stack based, which is my point. See Fig 2 from http://www-leland.stanford.edu/class/cs343/resources/java-ho...

Huh, so it's not. Thanks for the interesting read!

Re: Speeding up PHP with the HipHop VM

#120
post #116

Earlier quoted context omitted.

You can rely on the results, the results are what they claim to be on the home page -- "the time taken for this task, by this program, when compiled with this compiler, with these options, on this machine, with these workloads." > Feel free to make a claim... The only point of "this dance" was to help people understand that you are putting words into my mouth.

Exactly. You've said it yourself - you cannot rely on the results to tell if a language is faster than another. That was the original context of my claim, and you are admitting it yourself.

I said - "You can rely on the results."

Please say what you mean by "a language is faster than another".

Please say what in The Java™ Language Specification tells us that "language is faster than another."

http://docs.oracle.com/javase/specs/jls/se7/html/index.html

Post reply on HN