Java steals software spotlight Electronic Engineering Times December 22, 1997
Alexander Wolfe
In the often-confusing world of software, Java stood out as the clear focus of industry attention in 1997. Driven by engineers' demands for improved performance, Java's leading proponents introduced technologies to speed execution and prove to developers that the language is ready to cut its teeth in real-world applications.
As a result, Java shed its early image as an overhyped newcomer and became a real-world programming language that drove activity on the Internet in general and network computing in particular.
Led by Sun Microsystems, software houses paved the path to the future of Java by debuting optimization methods to make Java programs run faster. In addition, several companies introduced compilers that convert Java applications straight into X86 machine code.
On the silicon front, Sun Microelectronics, the semiconductor-technology arm of Java inventor Sun Microsystems Inc., taped out its PicoJava core. The core is the basis for several families of Java-specific microprocessors that will be fabricated by NEC Corp., LG Electronics and Rockwell. In early 1998, the chips will hit the market and shortly thereafter are expected to start appearing in dedicated Web browsers, network-computers and other low-cost Internet appliances.
While Java silicon could well dominate the scene by the end of 1998, the focus over the next few months will continue to be on improvements in software. Here, the highest-flying new technology is the Hot Spot optimization approach from Sun Microsystems. (Sun acquired the Hot Spot technology earlier this year when it purchased software developer Longview Technologies of Palo Alto, Calif.) Hot-Spot forms the heart of a compiler, which analyzes an application and identifies slow-running blocks of code. These blocks are then compiled into native code, rather than interpreted, for fast execution.
Sun is also hard at work on a radically revamped Java Virtual Machine that will incorporate Hot Spot. A Sun official said an early release to developers should be ready in early 1998, though the official launch to the company's customer base won't come until next summer.
Of more immediate aid to software developers is the cutting-edge effort at Symantec Corp. (Cupertino, Calif.), which promises the first of a wave of fast native compilers that convert Java programs straight into X86 machine code.
Such compilers could go a long way toward closing the performance gap between Java and rivals like C and C++. Yet they're practically heresy for a language that has built its appeal by promising developers they could write a single platform-neutral program that would run on a PC, Mac or Unix machine. However, the boost provided by direct compilation is proving too great to pass up. As a result, Java religion is beginning to yield to reality.
Symantec's compiler, which appears in its Visual Cafe 2.0 and Cafe Pro 2.0 Java development environments, directly translates Java source code into native Windows. According to the company, the resulting machine code is 25 percent to 50 percent faster than that generated by a more conventional just- in-time Java compiler. As a result, it makes Java programs much more competitive with code written in the C++ programming language.
So-called native-compilation techniques such as Symantec's are gaining adherents because they result in maximum execution speed with a minimum memory footprint. In the middle ground lie just-in-time compilers. These maintain Java's vaunted platform independence while reducing the performance penalty, but also cause programs to bloat and take up more memory.
The poorest performance comes from the old-line approach where byte codes are interpreted by a software-based Java Virtual Machine. Indeed, anecdotal reports peg interpreted Java applications at from two to 40 times slower than equivalent programs written in C++
The approaches being pursued by Sun, Symantec and Microsoft are expected to push Java to new heights. Kevin Nilsen, president of the real-time software developer Newmonics Inc., said he believes that Java will ultimately be within 50 percent of the speed of C++ "Remember, these are the eventual targets and right now the Java compilers and tools are very immature, " he noted. "But the people we talk to seem to be willing to pay these performance costs if they can get the productivity gains associated with Java. "
While Java software steals the limelight, the long-term staying power of the language will likely rest on whether Java silicon finds a ready home in the market. In 1997, CPU designers did their part to make sure that would happen. The first microprocessor to directly execute the Java instruction set was unveiled this past fall by an unexpected source: avionics manufacturer Rockwell Collins Inc. (Cedar Rapids, Iowa)
Because the chip features an unexpectedly low power-consumption rating of only 60 mW average, it could help drive Java squarely into the mainstream of embedded computing.
Interestingly, Rockwell, which has Java cross-licensing agreement with Sun, did not use Sun's PicoJava core to create its low-power embedded part. Instead, Rockwell engineers relied on the company's existing Advanced Architecture Microprocessor (AAMP), which is a CPU family that is constructed from an off-the-shelf library of standard cells.
Rockwell engineers said they made the choice because the architecture of the AAMP microprocessor is very similar to the Java architecture. As a result, it was easy for Rockwell to take its existing technology, make a few tweaks and add new microcode and thus implement Java directly.
The result is a processor called the JEM1, which runs at 50 MHz and is implemented in Rockwell's 0.5-micron CMOS process technology. The JEM1 core sits on only 6 mm2 of silicon real-estate and is combined with an interrupt controller, two programmable timers, external data-bus support, power- management technology and a JTAG test-interface to form a complete processor.
JEM1 is the first of a planned family of Java devices from Rockwell, which could include parts fitted with additional peripheral features. Rockwell believes JEM1 could find a home in heavy-duty embedded applications such as the company's own avionics systems.
While Rockwell was first to market, the center of Java silicon efforts remains Sun Microelectronics. The company is planning a trio of Java chips dubbed PicoJava, MicroJava and UltraJava. Sun is well along in the design process. Even so, the chips have yet to be shipped and they have remained the subject of intense interest ever since the processors were first discussed by Sun a year ago.
In PicoJava, which is aimed at the embedded market, Sun is addressing performance via the inclusion of a hardware JVM that enables Java byte codes to be executed directly by the chip without passing through an interpreter. To facilitate embedded applications, PicoJava is also being outfitted with extra instructions-called extended byte codes-not found in the standard Java instruction set.
These correlate directly to low-level chip-control operations such as register accesses, cache control and load and store operations. In practical usage, the extended byte codes are supposed to make it easier to control modems and network-interface devices. To speed performance, the extended byte codes can be executed directly by PicoJava in the same way it handles standard Java instructions. Two companies that have licensed Sun's PicoJava core-LG Semicon and NEC- are expected to have devices in the spring. Mitsubishi and Samsung also have Java licensing agreements with Sun Microelectronics, though it is not clear what plans the respective companies have.
For its part, Toshiba is using the Sun core to develop a low-power Java chip. In addition, Siemens will embed Java technology in smart cards.
But Patriot Scientific Corp. beat Sun and its partners to the punch, unveiling its PSC1000 Java chip this past September.
Copyright (c) 1997 CMP Media Inc. |