Mathematica 8 Gets Performance Boost, Integration with Wolfram Alpha

By Michael Feldman

December 14, 2010

The eighth version of Mathematica was released last month, the latest in Wolfram Research’s 22-year-old computational software platform. Although the tool is a relative newcomer to the high performance computing world, a raft of new capabilities have been added over the last several years that are aimed directly at the performance crowd. Mathematica 8 builds on those capabilities and adds some new ones that make it a serious contender for HPC applications.

Focus on performance started in earnest with Mathematica 4 back in 1999. Beginning with that release, Wolfram Research started to incorporate a variety of features and capabilities that improved runtime execution, including optimizing algorithms, supporting linkage of external C and Fortran libraries, and adding the ability to compile code. In 2008, with Mathematica 7, built-in support for multicore parallelism and compute clusters was added.

Mathematics 8 adds a number of new features that should boost performance even further. Perhaps the most important is the ability to generate, compile and link C code. The new feature allows Mathematica code to be automatically translated into C source code. The source can then be driven through a standard compiler (requiring a native Windows or Mac C compiler) and linked into a Mathematica executable for production.

The idea here is to take advantage of the speed of C-compiled code to boost performance of critical pieces of the Mathematic program. Previously Mathematica only supported compilation to a Java-like virtual machine byte-code, which although faster than interpreted execution, tended to be a good deal slower than compiled C code. In one example, a rendering application using vanilla Mathematica delivered just one frame every 10 to 15 seconds, while C compiled code was able to achieve two to four frames per second. Comparable speedups are to be expected from similar compute-intensive codes. All of this can be accomplished without the programmer ever having to write a single line of C.

Better yet, a parallelization option can be applied to a compiled function, which Mathematica will use to create a multi-threaded implementation. This can speed execution even further, assuming of course that the target CPU is multicore.

Compiled C code can be collected in dynamic link libraries (DLLs), which can be sucked back into the application or shared with other Mathematica programs. The ability to link DLLs also means externally developed C and C++ libraries can be incorporated into Mathematica, opening the door to many more performance optimized packages. Prior to this, talking with external C code involved the MathLink interface, which was burdened with the overhead of inter-program communication. Being able to access DLL routines directly makes calling external code much more efficient and straightforward.

For the GPGPU enthusiast, Mathematica 8 brings in support for CUDA and OpenCL. Unfortunately, this feature doesn’t have the seamless automation offered by the C code generation capability. Rather, the targeted algorithm has to be developed in CUDA or OpenCL first and then folded into the program later. Basically, Mathematica automates some of the housekeeping functions, such as downloading code and data to the GPU card, and uploading the results back to the host. GPGPU support can be scaled to utilize all the GPUs on a system, or, using the gridMathematica add-on, across a cluster.

Although you can’t automagically transform an arbitrary function into a GPU version, Mathematica 8 does include a couple dozen built-in functions that are already optimized for CUDA-enabled GPUs (in other words, those from NVIDIA). The functions are spread out across linear algebra, financial simulation, and image processing. The folks at Wolfram Research will undoubtedly be adding more built-in GPU routines in future versions, while also promising a more streamlined approach for GPU support.

Another category of performance improvements is enabled by speedups to a number of core algorithms. These include optimized solvers for integer linear algebra, highly oscillatory functions, transcendental and high-degree polynomial methods, and a number of new special functions. In some cases, the optimizations can boost performance by an order of magnitude or more, depending upon the size of the problem.

Besides the additional performance-boosting capabilities, Mathematica 8 also includes about 500 new built-in functions — an increase that represent nearly the entire function count in the original Mathematica 1 of 1988. The new capabilities in version 8 encapsulate high-level symbolic functions for probability and statistics; permutations and group theory algorithms; financial engineering routines of general utility; control system functions; wavelet analysis functions; graph and network algorithms; and image processing routine.

The last category encompasses some very useful routine for processing visual data. One of the new capabilities is feature detection, such as facial and character recognition. Also included are geometric transformations and image alignment. For video, Mathematica can now import and export individual frames as well as do real-time capture of webcam streams. All of these capabilities can be combined to deliver some rather sophisticated image processing applications on top of an already full-featured computational engine.

Perhaps the most visible addition to version 8 — at least from a user interface point of view — is the integration with Wolfram Alpha, the company’s Web-based computational knowledge engine. There are a number of advantages to marrying Mathematica to its Web spinoff, which, by the way, is itself a Mathematica application at its core.

First is the ability to tap the store of curated data in Wolfram Alpha, which encompasses a large and growing database that spans many technical and non-technical disciplines. It remains to be seen whether giving Mathematica users access to Wolfram Alpha data spurs new applications or will just be used as a sandbox for more customized data-centric applications.

For the application designer, one of the most potentially interesting uses of Wolfram Alpha is the ability to use its free-form linguistic capabilities. So instead of having to define a problem within the strict confines of the Mathematic language, you can use (more or less) natural language. So, for example, summing all the integers from 1 to 1000 would have to be specified as Sum[i, {i, 1, 1000}] in Mathematica, but could be simply stated as “sum integers 1 to 1000′” using the free-form mode.

The English version is automatically converted to Mathematica syntax on the fly, which can then be tweaked and developed separately. Extending the capability a bit further, users can pass Mathematica variables into Wolfram Alpha calculations.

The nice thing about the Mathematica architecture is nearly all its features, including the new ones described here, are included in the core technology. The Wolfram Alpha team has shied away from toolboxes, libraries, and standalone product add-ons (with the exception of gridMathematica). As a result, the new version 8 features can immediately leverage the large foundation of accumulated Mathematica componentry.

In the kickoff for Mathematica 8 at the Wolfram Technology Conference in November, company CEO Stephen Wolfram reiterated his commitment to maintain the platform as a unified, consistent software tool. Keeping the architecture monolithic means they are free to evolve the product through refinement of the individual pieces and the addition of new ones. With this kind of model, the whole is always guaranteed to be greater than the sum of the parts. “We’ve had a very simple strategic methodology,” explained Wolfram. “Just implement everything.”

Subscribe to HPCwire's Weekly Update!

Be the most informed person in the room! Stay ahead of the tech trends with industy updates delivered to you every week!

Multiverse Targets ‘Quantum Computing for the Masses’

January 19, 2022

The race to deliver quantum computing solutions that shield users from the underlying complexity of quantum computing is heating up quickly. One example is Multiverse Computing, a European company, which today launched the second financial services product in its Singularity product group. The new offering, Fair Price, “delivers a higher accuracy in fair price calculations for financial... Read more…

Students at SC21: Out in Front, Alongside and Behind the Scenes

January 19, 2022

The Supercomputing Conference (SC) is one of the biggest international conferences dedicated to high-performance computing, networking, storage and analysis. SC21 was a true ‘hybrid’ conference, with a total of 380 o Read more…

New Algorithm Overcomes Hurdle in Fusion Energy Simulation

January 15, 2022

The exascale era has brought with it a bevy of fusion energy simulation projects, aiming to stabilize the notoriously delicate—and so far, unmastered—clean energy source that would transform the world virtually overn Read more…

Summit Powers Novel Protein Function Prediction Work

January 13, 2022

There are hundreds of millions of sequenced proteins and counting—but only 170,000 have had their structures solved by researchers, bottlenecking our understanding of proteins and their functions across organisms’ ge Read more…

Q-Ctrl – Tackling Quantum Hardware’s Noise Problems with Software

January 13, 2022

Implementing effective error mitigation and correction is a critical next step in advancing quantum computing. While a lot of attention has been given to efforts to improve the underlying ‘noisy’ hardware, there's be Read more…

AWS Solution Channel

shutterstock 377963800

New – Amazon EC2 Hpc6a Instance Optimized for High Performance Computing

High Performance Computing (HPC) allows scientists and engineers to solve complex, compute-intensive problems such as computational fluid dynamics (CFD), weather forecasting, and genomics. Read more…

Nvidia Defends Arm Acquisition Deal: a ‘Once-in-a-Generation Opportunity’

January 13, 2022

GPU-maker Nvidia is continuing to try to keep its proposed acquisition of British chip IP vendor Arm Ltd. alive, despite continuing concerns from several governments around the world. In its latest action, Nvidia filed a 29-page response to the U.K. government to point out a list of potential benefits of the proposed $40 billion deal. Read more…

Multiverse Targets ‘Quantum Computing for the Masses’

January 19, 2022

The race to deliver quantum computing solutions that shield users from the underlying complexity of quantum computing is heating up quickly. One example is Multiverse Computing, a European company, which today launched the second financial services product in its Singularity product group. The new offering, Fair Price, “delivers a higher accuracy in fair price calculations for financial... Read more…

Students at SC21: Out in Front, Alongside and Behind the Scenes

January 19, 2022

The Supercomputing Conference (SC) is one of the biggest international conferences dedicated to high-performance computing, networking, storage and analysis. SC Read more…

Q-Ctrl – Tackling Quantum Hardware’s Noise Problems with Software

January 13, 2022

Implementing effective error mitigation and correction is a critical next step in advancing quantum computing. While a lot of attention has been given to effort Read more…

Nvidia Defends Arm Acquisition Deal: a ‘Once-in-a-Generation Opportunity’

January 13, 2022

GPU-maker Nvidia is continuing to try to keep its proposed acquisition of British chip IP vendor Arm Ltd. alive, despite continuing concerns from several governments around the world. In its latest action, Nvidia filed a 29-page response to the U.K. government to point out a list of potential benefits of the proposed $40 billion deal. Read more…

Nvidia Buys HPC Cluster Management Company Bright Computing

January 10, 2022

Graphics chip powerhouse Nvidia today announced that it has acquired HPC cluster management company Bright Computing for an undisclosed sum. Unlike Nvidia’s bid to purchase semiconductor IP company Arm, which has been stymied by regulatory challenges, the Bright deal is a straightforward acquisition that aims to expand... Read more…

SC21 Panel on Programming Models – Tackling Data Movement, DSLs, More

January 6, 2022

How will programming future systems differ from current practice? This is an ever-present question in computing. Yet it has, perhaps, never been more pressing g Read more…

Edge to Exascale: A Trend to Watch in 2022

January 5, 2022

Edge computing is an approach in which the data is processed and analyzed at the point of origin – the place where the data is generated. This is done to make data more accessible to end-point devices, or users, and to reduce the response time for data requests. HPC-class computing and networking technologies are critical to many edge use cases, and the intersection of HPC and ‘edge’ promises to be a hot topic in 2022. Read more…

Citing ‘Shortfalls,’ NOAA Targets Hundred-Fold HPC Increase Over Next Decade

January 5, 2022

From upgrading the Global Forecast System (GFS) to acquiring new supercomputers, the National Oceanic and Atmospheric Administration (NOAA) has been making big moves in the HPC sphere over the last few years—but now it’s setting the bar even higher. In a new report, NOAA’s Science Advisory Board (SAB) highlighted... Read more…

IonQ Is First Quantum Startup to Go Public; Will It be First to Deliver Profits?

November 3, 2021

On October 1 of this year, IonQ became the first pure-play quantum computing start-up to go public. At this writing, the stock (NYSE: IONQ) was around $15 and its market capitalization was roughly $2.89 billion. Co-founder and chief scientist Chris Monroe says it was fun to have a few of the company’s roughly 100 employees travel to New York to ring the opening bell of the New York Stock... Read more…

US Closes in on Exascale: Frontier Installation Is Underway

September 29, 2021

At the Advanced Scientific Computing Advisory Committee (ASCAC) meeting, held by Zoom this week (Sept. 29-30), it was revealed that the Frontier supercomputer is currently being installed at Oak Ridge National Laboratory in Oak Ridge, Tenn. The staff at the Oak Ridge Leadership... Read more…

AMD Launches Milan-X CPU with 3D V-Cache and Multichip Instinct MI200 GPU

November 8, 2021

At a virtual event this morning, AMD CEO Lisa Su unveiled the company’s latest and much-anticipated server products: the new Milan-X CPU, which leverages AMD’s new 3D V-Cache technology; and its new Instinct MI200 GPU, which provides up to 220 compute units across two Infinity Fabric-connected dies, delivering an astounding 47.9 peak double-precision teraflops. “We're in a high-performance computing megacycle, driven by the growing need to deploy additional compute performance... Read more…

Intel Reorgs HPC Group, Creates Two ‘Super Compute’ Groups

October 15, 2021

Following on changes made in June that moved Intel’s HPC unit out of the Data Platform Group and into the newly created Accelerated Computing Systems and Graphics (AXG) business unit, led by Raja Koduri, Intel is making further updates to the HPC group and announcing... Read more…

Nvidia Buys HPC Cluster Management Company Bright Computing

January 10, 2022

Graphics chip powerhouse Nvidia today announced that it has acquired HPC cluster management company Bright Computing for an undisclosed sum. Unlike Nvidia’s bid to purchase semiconductor IP company Arm, which has been stymied by regulatory challenges, the Bright deal is a straightforward acquisition that aims to expand... Read more…

D-Wave Embraces Gate-Based Quantum Computing; Charts Path Forward

October 21, 2021

Earlier this month D-Wave Systems, the quantum computing pioneer that has long championed quantum annealing-based quantum computing (and sometimes taken heat fo Read more…

Killer Instinct: AMD’s Multi-Chip MI200 GPU Readies for a Major Global Debut

October 21, 2021

AMD’s next-generation supercomputer GPU is on its way – and by all appearances, it’s about to make a name for itself. The AMD Radeon Instinct MI200 GPU (a successor to the MI100) will, over the next year, begin to power three massive systems on three continents: the United States’ exascale Frontier system; the European Union’s pre-exascale LUMI system; and Australia’s petascale Setonix system. Read more…

Three Chinese Exascale Systems Detailed at SC21: Two Operational and One Delayed

November 24, 2021

Details about two previously rumored Chinese exascale systems came to light during last week’s SC21 proceedings. Asked about these systems during the Top500 media briefing on Monday, Nov. 15, list author and co-founder Jack Dongarra indicated he was aware of some very impressive results, but withheld comment when asked directly if he had... Read more…

Leading Solution Providers

Contributors

Lessons from LLVM: An SC21 Fireside Chat with Chris Lattner

December 27, 2021

Today, the LLVM compiler infrastructure world is essentially inescapable in HPC. But back in the 2000 timeframe, LLVM (low level virtual machine) was just getting its start as a new way of thinking about how to overcome shortcomings in the Java Virtual Machine. At the time, Chris Lattner was a graduate student of... Read more…

2021 Gordon Bell Prize Goes to Exascale-Powered Quantum Supremacy Challenge

November 18, 2021

Today at the hybrid virtual/in-person SC21 conference, the organizers announced the winners of the 2021 ACM Gordon Bell Prize: a team of Chinese researchers leveraging the new exascale Sunway system to simulate quantum circuits. The Gordon Bell Prize, which comes with an award of $10,000 courtesy of HPC pioneer Gordon Bell, is awarded annually... Read more…

The Latest MLPerf Inference Results: Nvidia GPUs Hold Sway but Here Come CPUs and Intel

September 22, 2021

The latest round of MLPerf inference benchmark (v 1.1) results was released today and Nvidia again dominated, sweeping the top spots in the closed (apples-to-ap Read more…

Three Universities Team for NSF-Funded ‘ACES’ Reconfigurable Supercomputer Prototype

September 23, 2021

As Moore’s law slows, HPC developers are increasingly looking for speed gains in specialized code and specialized hardware – but this specialization, in turn, can make testing and deploying code trickier than ever. Now, researchers from Texas A&M University, the University of Illinois at Urbana... Read more…

Julia Update: Adoption Keeps Climbing; Is It a Python Challenger?

January 13, 2021

The rapid adoption of Julia, the open source, high level programing language with roots at MIT, shows no sign of slowing according to data from Julialang.org. I Read more…

Top500: No Exascale, Fugaku Still Reigns, Polaris Debuts at #12

November 15, 2021

No exascale for you* -- at least, not within the High-Performance Linpack (HPL) territory of the latest Top500 list, issued today from the 33rd annual Supercomputing Conference (SC21), held in-person in St. Louis, Mo., and virtually, from Nov. 14–19. "We were hoping to have the first exascale system on this list but that didn’t happen," said Top500 co-author... Read more…

TACC Unveils Lonestar6 Supercomputer

November 1, 2021

The Texas Advanced Computing Center (TACC) is unveiling its latest supercomputer: Lonestar6, a three peak petaflops Dell system aimed at supporting researchers Read more…

10nm, 7nm, 5nm…. Should the Chip Nanometer Metric Be Replaced?

June 1, 2020

The biggest cool factor in server chips is the nanometer. AMD beating Intel to a CPU built on a 7nm process node* – with 5nm and 3nm on the way – has been i Read more…

  • arrow
  • Click Here for More Headlines
  • arrow
HPCwire