Group Abstract Group Abstract

Message Boards Message Boards

7
|
37.3K Views
|
20 Replies
|
35 Total Likes
View groups...
Share
Share this post:

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

Posted 12 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
Posted 8 years ago
POSTED BY: Ralph Bloch
POSTED BY: Ian Johnson
Posted 8 years ago
POSTED BY: Ralph Bloch
POSTED BY: Keith Wanser
Posted 10 years ago
POSTED BY: Oliver Koenig
POSTED BY: Alex Newman
POSTED BY: BoB LeSuer
POSTED BY: Alex Newman
POSTED BY: BoB LeSuer
Posted 9 years ago
POSTED BY: Oliver Koenig
Posted 8 years ago
Attachments:
POSTED BY: Oliver Koenig
POSTED BY: Ilian Gachevski
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
Posted 12 years ago
Thank you,

That's really great !
POSTED BY: Nicolas Venuti
Nicolas,

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: wolfram.com/raspi
 
 In[1]:= Needs["CCompilerDriver`"]
 
 In[2]:= hello = CreateExecutable["
         #include <stdio.h>
        int main () { printf(\"hello\"); }",
        "hello"]

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

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

Out[3]= hello

and:

 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) {
          return;
          }

          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/add1.so

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
Posted 12 years ago
Hello

is the C DLL compiling feature enabled ?
POSTED BY: Nicolas Venuti
Posted 12 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
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
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
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard