HHVM is a virtual machine and just-in-time compiler (JIT) for applications written in PHP and Hack. It was developed by Facebook, and a few months ago (W21) I reported on the successful effort to port HHVM to ARM.
Since then, I’ve had a chance to try this out first hand, relying on the HHVM Github repository and the hhvm-arm mailing list for help. If you want to make your own way through this journey, here’s some notes that will save you some time.
sudo apt-get install php7.0-intl. If you don’t have the intl library installed, you’ll get an error related to Uncaught Error: Class ‘UConverter’ not found.
sudo groupadd wheel.
After all of this is done, I was able to get a system that passed all of the “quick” tests, and failed only one of the “slow” tests. Look for
uspoof.php, and review these two issues:
The reason for the test failure appears to be something deep in Facebook’s decision about which Unicode internationalization library to use, a library (ICU 49) that has slightly different semantics from the current version (ICU 55) affecting just one test.
Thanks to Steve Walk and Jim Saxman for their help to date!
If you’re tracking the progress of building LinuxKit on multiple architectures, the following open issues on Github are of interest:
In 2292, Rolf Neugebauer writes:
We now have both x86_64 and arm64 linuxkit/alpine images as well as initial support for building arm64 kernels. So we are getting close to full arm64 support.
We want this support to be transparent, ie ideally we can use the same YAML file without any changes to build x86_64 and arm64 LinuxKit images (and other archs in the future). The best way to achieve this is using multiarch images/manifests, currently using the manifest-tool. The tool pushes a manifest to hub which contains references to to the different images (e.g. for different architectures). I suggest we add the manifest-tool the the top-level Makefile in linuxkit.
This is all moving fast enough at the moment that I don’t have a first-hand report on build success, but when I do I’ll report back.
Work is well underway on porting .NET CoreCLR and CoreFX to ARM64, to the point where these builds are being added to the CI system. If you are tracking this, the relevant issues are
These changes are all targetted at the .NET Core 2.1 release, currently scheduled for approximately September 15, 2017.
SUNNYVALE, Calif.–(BUSINESS WIRE)–Azul Systems, Inc., in collaboration with Qualcomm Datacenter Technologies, Inc., a subsidiary of Qualcomm Incorporated, today announced the general availability of new versions of Zulu Enterprise and Zulu Embedded, a complete open source development and runtime platform for server-side Java applications, for the Qualcomm Centriq™ 2400 Server Processor. The new version of Zulu supports Java 8 and the ARM®v8-A architecture.
Engineers and developers who design or maintain Java-based systems can now harness the high core count, high performance and power efficiency of the Qualcomm Centriq 2400 processor to drive architectural innovation in the datacenter.
Zulu and Zulu Embedded are certified and tested open source builds of OpenJDK. The Zulu build of OpenJDK running on the Qualcomm Centriq 2400 processor includes a high-performance JIT compiler and delivers highly optimized machine code at runtime for server-based Java applications.
Pricing and Availability
All Azul Systems Zulu and Zulu Embedded builds of OpenJDK are 100% open source and free to download and use without restrictions. Azul offers flexible and cost-effective support contracts including timely security updates and IP protection for both standard and custom builds of Zulu, helping DevOps and product development teams reduce their Java support costs by up to 50% or more. Visit http://www.azul.com/downloads/zulu/zulu-download-arm/ to learn more and to download Zulu for the Qualcomm Centriq 2400 Server Processor. Builds of Zulu for 32-bit ARM-based processors, as well as 32/64-bit Intel x86 processors, are available at http://www.azul.com/downloads/zulu-embedded.
Special thanks this week to Elsie Wahlig and Ed Wu (Qualcomm), Zi Shem Lim (Cavium), and Jeff Underhill (ARM) for their help.
Works on Arm News is released weekly on Fridays. Follow @worksonarm on Twitter for the weekly link, or follow the worksonarm-news project on Github for notifications. Email to [email protected] if you’d like a direct email.
Back and current issues are available from the Works on Arm News archive on Github.