<rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0">
  <channel>
    <title>MaplePrimes - comments on Blog Entry, The Task Programming Model</title>
    <link>http://www.mapleprimes.com/maplesoftblog/36578-The-Task-Programming-Model</link>
    <language>en-us</language>
    <copyright>2026 Maplesoft, A Division of Waterloo Maple Inc.</copyright>
    <generator>Maplesoft Document System</generator>
    <lastBuildDate>Wed, 10 Jun 2026 11:06:30 GMT</lastBuildDate>
    <pubDate>Wed, 10 Jun 2026 11:06:30 GMT</pubDate>
    <itunes:subtitle />
    <itunes:summary />
    <description>The latest comments added to the Blog Entry, The Task Programming Model</description>
    <image>
      <url>http://www.mapleprimes.com/images/mapleprimeswhite.jpg</url>
      <title>MaplePrimes - comments on Blog Entry, The Task Programming Model</title>
      <link>http://www.mapleprimes.com/maplesoftblog/36578-The-Task-Programming-Model</link>
    </image>
    <item>
      <title>adding elements of an Array</title>
      <link>http://www.mapleprimes.com/maplesoftblog/36578-The-Task-Programming-Model?ref=Feed:MaplePrimes:The Task Programming Model:Comments#comment62759</link>
      <itunes:summary>&lt;p&gt;&amp;quot; For Maple the best way to sum over an array would be to use add.&amp;quot;&lt;/p&gt;
&lt;p&gt;I wouldn't be that sure about that. Anyway, even using add, it can be done faster.&lt;/p&gt;
&lt;pre&gt;
n := 10^8:
A := LinearAlgebra:-RandomVector( n, outputoptions=[datatype=integer[8]] ):
time[real](add( A[i], i=1..n )); 
                                         
                                29.718

time[real](add( i, i=A ));

                                19.297
&lt;/pre&gt;
&lt;p&gt;Converting A to `+` is about as fast as that,&lt;/p&gt;
&lt;pre&gt;
time[real](convert(A,`+`));

                                19.282
&lt;/pre&gt;
&lt;p&gt;The following doesn't work in this example,&lt;/p&gt;
&lt;pre&gt;
time[real](`+`(entries(A,nolist)));
Error, object too large
&lt;/pre&gt;
&lt;p&gt;but for smaller n it works, and it is faster,&lt;/p&gt;
&lt;pre&gt;
n := 10^7:
B := LinearAlgebra:-RandomVector( n, outputoptions=[datatype=integer[8]] ):
time[real](add( B[i], i=1..n )); 

                                2.933

time[real](convert(B,`+`));

                                1.919

time[real](`+`(entries(B,nolist)));

                                0.779
&lt;/pre&gt;
&lt;p&gt;The following is even faster,&lt;/p&gt;
&lt;pre&gt;
time[real](rtable_scanblock(B,[],Sum));

                                0.483
&lt;/pre&gt;
&lt;p&gt;and it works in the original example as well,&lt;/p&gt;
&lt;pre&gt;time[real](rtable_scanblock(A,[],Sum));

                                4.820
&lt;/pre&gt;
&lt;p&gt;The following also doesn't work in the original example,&lt;/p&gt;
&lt;pre&gt;time[real](trunc(Statistics:-Mean(A)*10^8));
Error, (in Statistics:-Mean) not enough memory to allocate rtable&lt;/pre&gt;
&lt;p&gt;but in the smaller example where it works, it is faster,&lt;/p&gt;
&lt;pre&gt;time[real](trunc(Statistics:-Mean(B)*10^7));

                                0.124
&lt;/pre&gt;
&lt;p&gt;Alec&lt;/p&gt;</itunes:summary>
      <description>The latest comments added to the Blog Entry, The Task Programming Model</description>
      <guid>62759</guid>
      <pubDate>Sat, 17 Oct 2009 07:22:08 Z</pubDate>
      <itunes:author>alec</itunes:author>
      <author>alec</author>
    </item>
    <item>
      <title>object too large</title>
      <link>http://www.mapleprimes.com/maplesoftblog/36578-The-Task-Programming-Model?ref=Feed:MaplePrimes:The Task Programming Model:Comments#comment62760</link>
      <itunes:summary>&lt;p&gt;I find this same 10^8 limit in 32-bits Maple. Shouldn't it be higher in 64-bits?&lt;/p&gt;</itunes:summary>
      <description>The latest comments added to the Blog Entry, The Task Programming Model</description>
      <guid>62760</guid>
      <pubDate>Sat, 17 Oct 2009 11:10:53 Z</pubDate>
      <itunes:author>jakubi</itunes:author>
      <author>jakubi</author>
    </item>
    <item>
      <title>32-bit Maple in Windows vs. 64-bit Maple in Linux</title>
      <link>http://www.mapleprimes.com/maplesoftblog/36578-The-Task-Programming-Model?ref=Feed:MaplePrimes:The Task Programming Model:Comments#comment62761</link>
      <itunes:summary>&lt;p&gt;Yes, I did these measurements in 32-bit Maple - in Classic Maple interface in Windows. 64-bit Maple doesn't have Classic interface, so I use it quite rarely (if at all.)&lt;/p&gt;
&lt;p&gt;Out of curiosity, I've just repeated them in 64-bit Maple 12 in Linux (Ubuntu 9.04).&lt;/p&gt;
&lt;pre&gt;
n := 10^8:
A := LinearAlgebra:-RandomVector( n, outputoptions=[datatype=integer[8]] ):
time[real](add( A[i], i=1..n )); 
                                         
                                24.198

time[real](add( i, i=A ));

                                22.308

time[real](convert(A,`+`));

                                17.513

time[real](`+`(entries(A,nolist)));
&lt;/pre&gt;
&lt;p&gt;Waited for a few minutes - it didn't stop, so I interrupted the calculation, but Maple stayed frozen and I couldn't do anything in it, so I closed it and then started it again.&lt;/p&gt;
&lt;pre&gt;
time[real](rtable_scanblock(A,[],Sum));

                                6.353

time[real](trunc(Statistics:-Mean(A)*10^8));

                                7.837
&lt;/pre&gt;
&lt;p&gt;Doing that second time gave&lt;/p&gt;
&lt;pre&gt;
time[real](rtable_scanblock(A,[],Sum));

                                5.934

time[real](trunc(Statistics:-Mean(A)*10^8));

                               74.394
&lt;/pre&gt;
&lt;p&gt;But for n=10^7 the order of results is about the same as in Windows, just about 3 - 5 times slower for procedures using external calling - obviously, Windows dll used by Maple are faster than Linux so.&lt;/p&gt;
&lt;p&gt;That, by the way, confirms other evidence that Linux development has stalled last year or two. While Windows 7 is a significant step ahead, latest Linux upgrades, either kernel or desktop, are just minor improvements and bug fixing. A lot of not only new, but also 2 or 3 years old hardware, especially networking, doesn't work in Linux. It seems as if the Linux developers finally realized that they can't compete with Windows.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Conclusion: &lt;/b&gt;32-bit Classic Maple in Windows is much better than 64-bit Standard Maple in Linux.&lt;/p&gt;
&lt;p&gt;Alec&lt;/p&gt;</itunes:summary>
      <description>The latest comments added to the Blog Entry, The Task Programming Model</description>
      <guid>62761</guid>
      <pubDate>Sun, 18 Oct 2009 03:21:59 Z</pubDate>
      <itunes:author>alec</itunes:author>
      <author>alec</author>
    </item>
    <item>
      <title>other evidence</title>
      <link>http://www.mapleprimes.com/maplesoftblog/36578-The-Task-Programming-Model?ref=Feed:MaplePrimes:The Task Programming Model:Comments#comment62762</link>
      <itunes:summary>&lt;p&gt;By other evidence, you mean comparative reviews of Linux vs Windows on 64 bits/multiprocessor platforms? If so, do you have some pointers?&lt;/p&gt;</itunes:summary>
      <description>The latest comments added to the Blog Entry, The Task Programming Model</description>
      <guid>62762</guid>
      <pubDate>Sun, 18 Oct 2009 04:22:54 Z</pubDate>
      <itunes:author>jakubi</itunes:author>
      <author>jakubi</author>
    </item>
    <item>
      <title>other evidence</title>
      <link>http://www.mapleprimes.com/maplesoftblog/36578-The-Task-Programming-Model?ref=Feed:MaplePrimes:The Task Programming Model:Comments#comment62763</link>
      <itunes:summary>&lt;p&gt;It was just my personal observation. The way I use Windows and Linux may be far from the most typical, so other people may have different opinions.&lt;/p&gt;
&lt;p&gt;Same with reviews - it's not that easy to find a reviewer having similar experience (and weights) as you or me.&lt;/p&gt;
&lt;p&gt;In this particular example, comparing speed of the same commands in Maple in Windows and Linux, on the same computer, the advantage of using Windows and Classic Maple is rather clear.&lt;/p&gt;
&lt;p&gt;Alec&lt;/p&gt;</itunes:summary>
      <description>The latest comments added to the Blog Entry, The Task Programming Model</description>
      <guid>62763</guid>
      <pubDate>Sun, 18 Oct 2009 05:02:24 Z</pubDate>
      <itunes:author>alec</itunes:author>
      <author>alec</author>
    </item>
    <item>
      <title>adding array elements in Python</title>
      <link>http://www.mapleprimes.com/maplesoftblog/36578-The-Task-Programming-Model?ref=Feed:MaplePrimes:The Task Programming Model:Comments#comment62764</link>
      <itunes:summary>&lt;p&gt;Now, compare that with adding array elements in Python (I used the IPython(x,y) console from the &lt;a href="http://www.pythonxy.com/foreword.php"&gt;Python(x,y)&lt;/a&gt; distribution for Windows),&lt;/p&gt;
&lt;pre&gt;
In [9]: a=randint(-100,100,10**8)

In [10]: time add.reduce(a)
CPU times: user 0.29 s, sys: 0.00 s, total: 0.29 s
Wall time: 0.28 s
Out[11]: -51005647
&lt;/pre&gt;
&lt;p&gt;Alec&lt;/p&gt;</itunes:summary>
      <description>The latest comments added to the Blog Entry, The Task Programming Model</description>
      <guid>62764</guid>
      <pubDate>Sun, 18 Oct 2009 08:03:30 Z</pubDate>
      <itunes:author>alec</itunes:author>
      <author>alec</author>
    </item>
  </channel>
</rss>