Message Boards Message Boards

20 Replies
35 Total Likes
View groups...
Share this post:

Does Mathematica for Raspberry Pi have the full standard Mma functionality?

Posted 11 years ago
I saw the annoucement of Mathematica for Raspberry Pi today.

I was wondering if this version of Mathematica has all the functionality that is available in the commercial version of Mathematica.  Or is it just a subset?  (Mathematica 9 is much bigger than just 429 MB.)  I'm interested in kernel functionality mostly.  I understand the the Predictive Interface is disabled to improve performance.

I would try it out, but I do not have a Raspberry Pi at this moment...
POSTED BY: Szabolcs Horvát
20 Replies
The goal is to have full functionality that is on par with the desktop versions.

There are some caveats:
  • The documentation was omitted for installation size reasons. Instead, pressing F1 on a selected function opens the web version of the Wolfram Language documentation.
  • Performance on the Raspberry Pi is significantly slower than any desktop version (benchmark evaluations are typically 30-50x slower, and 1000x slower on some linear algebra and image processing routines, which use Intel's MKL and IPP on the desktop and are highly optimized in those cases).
POSTED BY: Arnoud Buzing
The entire kernel is present. That doesn't mean that all functionality will work flawlessly today (or quickly, for that matter). This is not a reduced subset of the core Mathematica functionality, in any case. There are some Mathematica application features (certain Add-Ons, Links, and other components) that are not present at this time. We're still working very hard on this product and platform, though, so it should approach parity with the main product over time.

The primary difference you're seeing in size is that documentation is not packaged with the Raspberry Pi build, so it relies on online documentation. Also, it does not include its own Java runtime but rather relies on the one provided by the system. We tried to make it as small as possible with the understanding that people would be using it on an SD card.
POSTED BY: Alex Newman

Yes, things like CreateExecutable and CreateLibrary are supported

 pi@raspberry-wri2 ~ $ wolfram
 Wolfram Language (Raspberry Pi Pilot Release)
 Copyright 1988-2013 Wolfram Research
 Information & help:
 In[1]:= Needs["CCompilerDriver`"]
 In[2]:= hello = CreateExecutable["
         #include <stdio.h>
        int main () { printf(\"hello\"); }",

Out[2]= /home/pi/.Mathematica/SystemFiles/LibraryResources/Linux-ARM/hello

In[3]:= Import["!"<>QuoteFile[hello],"Text"]

Out[3]= hello


 In[4]:= add1src = "
           #include \"WolframLibrary.h\"
           DLLEXPORT mint WolframLibrary_getVersion(){
             return WolframLibraryVersion;
           DLLEXPORT int WolframLibrary_initialize( WolframLibraryData \
         libData) {
          return 0;

          DLLEXPORT void WolframLibrary_uninitialize( WolframLibraryData \
        libData) {

          DLLEXPORT int constantzero(WolframLibraryData libData, mint Argc, \
        MArgument *Args, MArgument Res){
             MArgument_setInteger(Res, 0);
             return LIBRARY_NO_ERROR;

          DLLEXPORT int add1(WolframLibraryData libData,
          mint Argc, MArgument *Args, MArgument Res) {
          mint I0;
          mint I1;
          I0 = MArgument_getInteger(Args[0]);
          I1 = I0 + 1;
          MArgument_setInteger(Res, I1);
          return LIBRARY_NO_ERROR;


In[5]:= add1lib = CreateLibrary[add1src, "add1"]

Out[5]= /home/pi/.Mathematica/SystemFiles/LibraryResources/Linux-ARM/

In[6]:= add1 = LibraryFunctionLoad[add1lib, "add1", {Integer}, Integer]

Out[6]= LibraryFunction[<>, add1, {Integer}, Integer]

In[7]:= Map[add1, {0, 1, 2, 99, 1023}]

Out[7]= {1, 2, 3, 100, 1024}
POSTED BY: Arnoud Buzing
LibraryLink (and MathLink) should be an essential feature for interfacing with various devices that Mathematica doesn't handle by default.

Sounds like Mathematica itself may become a good reason to buy a Pi, at least for those who appreciate the power of Mathematica.
POSTED BY: Szabolcs Horvát
The documentation for the product is the Wolfram Language documentation itself. We have some Pi-specific guides also rooted in the Raspberry Pi guide page. The functionality will expand as time goes on and the documentation should grow with it. If the product deviates from the documentation, then expect the behavior to change to match the documentation in a forthcoming update.
POSTED BY: Alex Newman
Posted 11 years ago
I realize with any new major project introduction that documentation can be in flux for a while.

Is it possible to provide the url of a base web page that will maintain all the current Mathematica Raspberry Pi documentation so that this can be studied by potential new users before they purchase the Raspberry Pi?

Thank you
POSTED BY: Bill Simpson
Posted 11 years ago

is the C DLL compiling feature enabled ?
POSTED BY: Nicolas Venuti
Posted 11 years ago
Thank you,

That's really great !
POSTED BY: Nicolas Venuti
Posted 9 years ago

I’m using the latest Raspbian version on a Raspberry Pi 2. My intention is to control TinkerForge Bricks and Bricklets with the available Mathematica API Bindings as described in the instructions here .

.NET/Link support is required besides further prerequisites. Unfortunately the NETLink folder in the directory /opt/Wolfram/WolframEngine/10.0/SystemFiles/Links is missing. The execution of the example coding fails. With Python it works well.

Is there any option available to subsequently add the missing ./NETLink functionality on Raspbian?

POSTED BY: Oliver Koenig

There's no option available to add functionality to the Raspberry Pi release of the product, but we could add NETLink in a future release.

POSTED BY: Alex Newman

Alex - does your comment suggest that there actually will be a future release of Mathematica on the RPi? The last update was a year ago, and it would be great to have some of the cool tools in 10.1/2/3 available on the RPi as well.


10.3.1 should already be up on the Raspberry Pi foundation's dpkg repository. The next update should follow in a few weeks. It's getting closer to being feature-complete with the standard workstation product but it's not quite there yet.

POSTED BY: Alex Newman

Thanks Alex - I checked the Raspberry Pi blog this morning and saw the announcement. I guess I needed my patience to last just one more day. Very exciting.


This is great news on the Mathematica upgrade! Thank-you Alex and Stephen Wolfram! This is really great to see you support the GNU community, educators, hackers, makers, students, etc. In the long run, it can only benefit Wolfram. Glad to see that the RPi2 users were not abandoned with a one time version only. Giving the reception of the RPi2, I am hoping that the RPi Foundation will go to Armf8 or better soon. Does Mathematica run a lot faster on a cluster of 4 Rpi2's? Anyone have any experience on that?

Last week I just finished making a few images of the 11/21/15 Jessie release with all my files (I have several RPi2's at home and work), and I had a feeling that the RPi Foundation would be doing a new release around Feb., as they did last year. I was wondering if Wolfram was going to do an upgrade.

After updating the cache, can I just sudo apt-get upgrade wolfram-engine on the previous (11/21/15) release of Jessie Raspian, or do I need to start over with the new 2/3/16 Jessie Raspian release to upgrade from the 10.0.2+2015092101 Wolfram-Engine? In a previous release of Wheezy Raspian I tried to upgrade the Wolfram-Engine from a slightly earlier version, and had a problem with Mathematica hanging up after upgrading the Wolfram engine.

It is a royal pain to constantly start over and load all my software and files to a new operating system every time they have a new release of Raspian.

POSTED BY: Keith Wanser
Posted 8 years ago

Is there, by any chance, news about NETLink in a coming release?

POSTED BY: Oliver Koenig
Posted 7 years ago

I may be a bit slow in the uptake. But I can't get algebraic expressions to work (on Raspberry Pi Zero W):

In: Simplify(x^2+2x+1)
Out: Simplify(1+2x+x^2)

Now it's true that it is almost 70 years since I had algebra in school, but I don't believe my math teacher would have been amused with this answer. What did I do wrong?

POSTED BY: Ralph Bloch


Are you using square brackets for functions? For example do




POSTED BY: Ian Johnson
Posted 7 years ago

You are right, I am slow. I hadn't twigged to functions requiring square brackets. Thanks.

POSTED BY: Ralph Bloch
Posted 6 years ago


It seams, that NETLink has not been implemented in 11.0.1. I found instead the more specific TinkerForgeWeatherStationTools in the "Links" directory. It is worth to have a look at this directory, because of many additional libraries.

I am still interested in calling Node.js and Python language from within Mathematica. Might "ExternalEvaluate" be an option? Is it available on RasPi as this ist "New/Experimental"? Documentation

I configured Python according to this instructions here but was not able to connect to with FindExternalEvaluators. (I used pip install pyzmq instead of zmq package, prerequisites have been met).

The installation of Node.js failed. Find the log-file as an attachment.

Thanks, Oliver

POSTED BY: Oliver Koenig

ExternalEvaluate was introduced in version 11.2, so it would not be available in version 11.0.1.

POSTED BY: Ilian Gachevski
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
or Discard

Group Abstract Group Abstract