Re: Slow Show/Graphics in v6.0

• To: mathgroup at smc.vnet.net
• Subject: [mg80955] Re: [mg80906] Slow Show/Graphics in v6.0
• From: Brett Champion <brettc at wolfram.com>
• Date: Thu, 6 Sep 2007 05:28:28 -0400 (EDT)
• References: <200709050653.CAA26889@smc.vnet.net>

```On Sep 5, 2007, at 1:53 AM , Alex Shvydky wrote:

> Hello,
>
> Just wanted to share my puzzlement (utter disappointment/
> frastration) with a ridiculously slow speed of Show/Graphics
> routines in the v6.0 of Mathematica as compared to 5.2,
> which to me at this point makes v6.0 plain unusable.
>
> Working with hydrodynamic simulations I need to
> visualize the computational grid. So I wrote
> simple Mathematica routines to draw a simulation grid.
> In 5.2 they worked fabulously for the past couple of
> years.
>
> Here's an example.
> First, set up two 2dimensional x- and y-coordinate
> arrays.
>
> Timing[
>    mr = 350;
>    mt = 350;
>    xar = Table[((ir - 1.)/(mr - 1.))*Cos[Pi*((it - 1.)/(mt - 1.))],
>                {it, 1, mt}, {ir, 1, mr}];
>    yar = Table[((ir - 1.)/(mr - 1.))*Sin[Pi*((it - 1.)/(mt - 1.))],
>                {it, 1, mt}, {ir, 1, mr}];
> ]
>
> In v6.0 it took
> Out[3]= {2.312, Null}
> In v5.2 it took
> {0.281 Second, Null}
>
> Which is an order of magnitude difference, but hold on.
> Now let's plot the mesh by simply constructing table
> of edges of all the cells (I am aware that the algorithm
> below is very unoptimized and can be made faster etc. etc.
> It was not my intention to discuss here what should be the
> fastest algorithm to plot a 2-d mesh,
> nor was it my intention to debate the issue why one
> would need to plot such a large mesh in the first place...,
> but rather to compare the execution time for an IDENTICAL
> code on v6.0 and v5.2. and get some confirmation/explanation
> of such a suspiciously slow execution speed!).:
>
> Timing[
> Show[
>     Graphics[{Hue[0.7], AbsoluteThickness[0.1],
> 	Table[{Line[{{xar[[it,ir]], yar[[it,ir]]},
>                       {xar[[it,ir + 1]],yar[[it,ir + 1]]},
>                       {xar[[it + 1,ir + 1]], yar[[it + 1,ir + 1]]},
>                       {xar[[it + 1,ir]], yar[[it + 1,ir]]}}]},
>          {ir, 1, mr - 1}, {it, 1, mt - 1}]
>     }],
> PlotRange -> {{-1, 1}, {0, 1}}, AspectRatio -> 1/2, Axes -> True,
> DisplayFunction -> \$DisplayFunction, ImageSize -> 800]]
>
> While the timing as, it is returned by the Timing[] function,
> is smaller in the v6.0:
> {1.703, <Here goes the actual graphics>}
> vs.
> {2.094 Second, -Graphics-}
> in v5.2
>
>
> The actual cell evaluation time in v.6.0 is 124.11 seconds
> vs. 2.22 seconds in v 5.2. ???!!!!!!!
>
> if someone from Wolfram Research would explain if
> that is intended (unavoidable) by design or maybe
> a simple setting (which I am unaware of) or a future patch
> will be able to fix it.
>
> Also, it is horribly slow to resize the above graphics
> in v5.2 you just grab the corned and drag. In v6.0 you
> must do it 10-100 times slower (is it possible
> that I just have a very poor graphics card?).

This should be much faster to render, although it's still a bit
sluggish to resize.

Timing[Show[
Graphics[{Hue[0.7],
AbsoluteThickness[
0.1], {Line[
Developer`ToPackedArray[
N[Flatten[
Table[{{xar[[it, ir]], yar[[it, ir]]}, {xar[[it, ir + 1]],
yar[[it, ir + 1]]}, {xar[[it + 1, ir + 1]],
yar[[it + 1, ir + 1]]}, {xar[[it + 1, ir]],
yar[[it + 1, ir]]}}, {ir, 1, mr - 1}, {it, 1, mt - 1}],
1]]]]}}],
PlotRange -> {{-1, 1}, {0, 1}}, AspectRatio -> 1/2, Axes -> True,
DisplayFunction -> \$DisplayFunction, ImageSize -> 800]]

Brett Champion
Wolfram Research

```

• Prev by Date: Re: Kernel and frontend crash with ANY Graphics3D objects
• Next by Date: Re: Question about memory consumption in my codes by using Mathematica 6, Thanks!
• Previous by thread: Re: Slow Show/Graphics in v6.0
• Next by thread: Re: Slow Show/Graphics in v6.0