home *** CD-ROM | disk | FTP | other *** search
/ ftp.xmission.com / 2014.06.ftp.xmission.com.tar / ftp.xmission.com / pub / lists / fractint / archive / v01.n472 < prev    next >
Internet Message Format  |  2000-04-29  |  41KB

  1. From: owner-fractint-digest@lists.xmission.com (fractint-digest)
  2. To: fractint-digest@lists.xmission.com
  3. Subject: fractint-digest V1 #472
  4. Reply-To: fractint-digest
  5. Sender: owner-fractint-digest@lists.xmission.com
  6. Errors-To: owner-fractint-digest@lists.xmission.com
  7. Precedence: bulk
  8.  
  9.  
  10. fractint-digest         Sunday, April 30 2000         Volume 01 : Number 472
  11.  
  12.  
  13.  
  14.  
  15. ----------------------------------------------------------------------
  16.  
  17. Date: Thu, 27 Apr 2000 17:00:43 +0100
  18. From: "Iain G. Stirling" <Iain@flat2-2.freeserve.co.uk>
  19. Subject: Re: (fractint) sqr() function considered harmful.
  20.  
  21. Morgan L. Owens wrote:
  22.  
  23. > At 20:37 26/04/2000 +0100, you wrote:
  24. > >Morgan L. Owens wrote:
  25. > >
  26. > >> I took some time out to do some speed tests of Fractint's formula parser -
  27. > >> in particular, how it handles various ways of representing integer powers
  28. > >> of a complex number. I was surprised by the results.
  29. > >>
  30. > >
  31.  
  32. <snip>
  33.  
  34. > >Here are my times:
  35. > >
  36. > >n  power    mult        sqr
  37. > >0  7:48.46  5:47.40  5:44.44
  38. > >1  8:33.50  5:47.35  5:44.49
  39. > >2  8:34.82  6:19.43  6:07.29
  40. > >3  8:21.64  6:53.75  6:52.55
  41. > >
  42. > >(I only ran to n=3, as I am supposed to be studying for my final exams 
  43. > >at the moment!)
  44. > > 
  45. > This looks a lot more like what I'd expected to see. The much higher times
  46. > overall than mine can be explained with a look at the formulae:
  47. > exp0 {z=0,c=rand,c=c^0,|z|<4}
  48. > sqr3 {z=0,c=rand,c=sqr(c)*c,|z|<4}
  49. > The second comma should be a colon; as things stand all four statements are
  50. > executed with every iteration, instead of only the last two.
  51.  
  52. This might account for the difference we see. With my formulae, c is 
  53. reinitialised, and so takes on a fresh magnitude every iteration. With 
  54. your formulae, c is repeatedly diminshed, through 150 iterations 
  55. (assuming you have left the default maxiter value). Surely at some 
  56. point, the value is diminshed until it cannot be represented in floating 
  57. point any more, and it just takes the value zero. Then, perhaps the 
  58. particular function (*, ^ or sqr()) has an optimisation for the zero case, 
  59. allowing it perform very well? (This is just a hunch, mind you.)
  60.  
  61. <snip>
  62.  
  63. > This sort of result is what I half-suspected, which is why I hoped someone
  64. > else would run similar tests. I had got suspicious when some optimisations
  65. > I was making to a few of my formulae didn't appear to have any result. But
  66. > I surmised that conventional wisdom must have had some justification.
  67. > When I find another spare hour or two I'll fiddle with the experimental
  68. > conditions and make another run.
  69. > > If I have time (possibly at the weekend), I'll continue these tests.
  70. > >
  71. > I'll be interested in the results, in particular where the breakovers occur
  72. > - how high does n have to be before powers are cheaper than multiple
  73. > multiplicatios?
  74.  
  75. I have decided to take a break from studying (well-earned, I assure 
  76. you) to continue my testing:
  77.  
  78.  n  power     mult        sqr
  79.  0  7:48.46   5:47.40  5:44.44
  80.  1  8:33.50   5:47.35  5:44.49
  81.  2  8:34.82   6:19.43  6:07.29
  82.  3  8:21.64   6:53.75  6:52.55
  83.  4  8:08.23   7:36.43  6:53.92
  84.  5  8:00.59   8:22.08  7:38.73
  85.  6  7:55.55   9:03.76  7:43.02
  86.  7  7:52.08   9:48.80  8:35.86
  87.  8  7:49.45 10:55.59  7:46.27
  88.  9  7:47.36 12:09.47  8:45.15
  89. 10 7:53.95 13:39.32  8:53.05
  90.  
  91. So it can be seen that beyond n=4, multiplication is worst, and powers 
  92. and sqr fight over it, with sqr being successful on n=5,6 and 8.
  93.  
  94. What I will probably do next (on my next study break) is add that colon 
  95. into the formulae and get a new set of results, which I presume will 
  96. compare with yours. If you change the colon for a comma in your 
  97. formulae, will your times agree with mine above...?
  98.  
  99. For reference, I have a P133 and I am running Fractint from DOS, so 
  100. the times we get should be quite similar for identical tests.
  101.  
  102. Iain Stirling.
  103.  
  104.  
  105. - --------------------------------------------------------------
  106. Thanks for using Fractint, The Fractals and Fractint Discussion List
  107. Post Message:   fractint@lists.xmission.com
  108. Get Commands:   majordomo@lists.xmission.com "help"
  109. Administrator:  twegner@fractint.org
  110. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  111.  
  112. ------------------------------
  113.  
  114. Date: Thu, 27 Apr 2000 15:10:31 -0300
  115. From: "Fliguer, Miguel" <M_Fliguer@unifon.com.ar>
  116. Subject: RE: (fractint) MandelbrotMix4 lakes
  117.  
  118. It works from here.
  119.  
  120. You can try using xoom's numerical ip address :
  121.  
  122. http://206.132.163.167/fliguer/franktal.html
  123.  
  124. (You can't see the graphics in this way)
  125.  
  126. If you can connect to the page, that means your 
  127. browser can't resolve xoom's address because of a local 
  128. DNS problem.
  129.  
  130. How's your book selling ? ;-)
  131.  
  132. - -----Mensaje original-----
  133. De: Ricardo M. Forno [mailto:rforno@afip.gov.ar]
  134. Enviado el: jueves 27 de abril de 2000 13:32
  135. Para: fractint@lists.xmission.com
  136. Asunto: RE: (fractint) MandelbrotMix4 lakes
  137.  
  138.  
  139. Miguel:
  140. After several attempts, I was unable to connect to your page.
  141. Do you know what is going on?
  142.  
  143. - ----- Original Message ----- 
  144. From: Fliguer, Miguel <M_Fliguer@unifon.com.ar>
  145. To: <fractint@lists.xmission.com>
  146. Sent: Wednesday, April 26, 2000 5:57 PM
  147. Subject: RE: (fractint) MandelbrotMix4 lakes
  148.  
  149.  
  150. > Guy wrote :
  151. > >> Oohhh.. thanks Sylvie, Jim! That's a b'ful playground for little
  152. > >> animations (and tests)!!
  153. > Check out "Mandelbrot SunSet" at 
  154. > http://members.xoom.com/fliguer/gallery5.html
  155. > for a 570K AVI which features the "lake" effect. 
  156. > Regards,
  157. > Miguel
  158. >   
  159. > --------------------------------------------------------------
  160. > Thanks for using Fractint, The Fractals and Fractint Discussion List
  161. > Post Message:   fractint@lists.xmission.com
  162. > Get Commands:   majordomo@lists.xmission.com "help"
  163. > Administrator:  twegner@fractint.org
  164. > Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  165.  
  166.  
  167. - --------------------------------------------------------------
  168. Thanks for using Fractint, The Fractals and Fractint Discussion List
  169. Post Message:   fractint@lists.xmission.com
  170. Get Commands:   majordomo@lists.xmission.com "help"
  171. Administrator:  twegner@fractint.org
  172. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  173.  
  174. - --------------------------------------------------------------
  175. Thanks for using Fractint, The Fractals and Fractint Discussion List
  176. Post Message:   fractint@lists.xmission.com
  177. Get Commands:   majordomo@lists.xmission.com "help"
  178. Administrator:  twegner@fractint.org
  179. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  180.  
  181. ------------------------------
  182.  
  183. Date: Thu, 27 Apr 2000 21:30:02 +0100
  184. From: "Iain G. Stirling" <Iain@flat2-2.freeserve.co.uk>
  185. Subject: Re: (fractint) sqr() function considered harmful.
  186.  
  187. Iain G. Stirling wrote:
  188.  
  189. > Morgan L. Owens wrote:
  190. > > At 20:37 26/04/2000 +0100, you wrote:
  191. > > >Morgan L. Owens wrote:
  192. > > >
  193. > > >> I took some time out to do some speed tests of Fractint's formula parser -
  194. > > >> in particular, how it handles various ways of representing integer powers
  195. > > >> of a complex number. I was surprised by the results.
  196. > > >>
  197. > > >
  198. > <snip>
  199. > > 
  200. > > >Here are my times:
  201. > > >
  202. > > >n  power    mult        sqr
  203. > > >0  7:48.46  5:47.40  5:44.44
  204. > > >1  8:33.50  5:47.35  5:44.49
  205. > > >2  8:34.82  6:19.43  6:07.29
  206. > > >3  8:21.64  6:53.75  6:52.55
  207. > > >
  208. > > >(I only ran to n=3, as I am supposed to be studying for my final exams 
  209. > > >at the moment!)
  210. > > > 
  211. > > This looks a lot more like what I'd expected to see. The much higher times
  212. > > overall than mine can be explained with a look at the formulae:
  213. > > 
  214. > > exp0 {z=0,c=rand,c=c^0,|z|<4}
  215. > > sqr3 {z=0,c=rand,c=sqr(c)*c,|z|<4}
  216. > > 
  217. > > The second comma should be a colon; as things stand all four statements are
  218. > > executed with every iteration, instead of only the last two.
  219. > This might account for the difference we see. With my formulae, c is 
  220. > reinitialised, and so takes on a fresh magnitude every iteration. With 
  221. > your formulae, c is repeatedly diminshed, through 150 iterations 
  222. > (assuming you have left the default maxiter value). Surely at some 
  223. > point, the value is diminshed until it cannot be represented in floating 
  224. > point any more, and it just takes the value zero. Then, perhaps the 
  225. > particular function (*, ^ or sqr()) has an optimisation for the zero case, 
  226. > allowing it perform very well? (This is just a hunch, mind you.)
  227.  
  228. OOPS! I have just noticed that my _e-mail_ was the only place that the 
  229. second comma had been introduced - a simple typo. on my part. My 
  230. .FRM files all use the colon in the second position, and hence match 
  231. your formulae. So, the above reasoning (which might be sound) is 
  232. entirely unrelated to the testing we are performing.
  233.  
  234. Therefore it must surely be connected with the fact that you are using 
  235. passes=g whereas I am using passes=1. 
  236.  
  237. Consequently my next tests will be with passes=g...
  238.  
  239. Sorry for the confusion,
  240.  
  241. Iain Stirling.
  242.  
  243.  
  244. - --------------------------------------------------------------
  245. Thanks for using Fractint, The Fractals and Fractint Discussion List
  246. Post Message:   fractint@lists.xmission.com
  247. Get Commands:   majordomo@lists.xmission.com "help"
  248. Administrator:  twegner@fractint.org
  249. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  250.  
  251. ------------------------------
  252.  
  253. Date: Thu, 27 Apr 2000 23:17:48 +0200
  254. From: Guy Marson <guy.marson@mnhn.lu>
  255. Subject: RE: (fractint) MandelbrotMix4 lakes
  256.  
  257. At 17:57 26/04/00 -0300, you wrote:
  258. >Check out "Mandelbrot SunSet" at 
  259. >http://members.xoom.com/fliguer/gallery5.html
  260. >for a 570K AVI which features the "lake" effect. 
  261. >
  262. >Regards,
  263. >Miguel
  264. >  
  265.  
  266. yeh, very nice! 
  267.  
  268. cheers,
  269.  
  270. Guy
  271.  
  272.  
  273. - --------------------------------------------------------------
  274. Thanks for using Fractint, The Fractals and Fractint Discussion List
  275. Post Message:   fractint@lists.xmission.com
  276. Get Commands:   majordomo@lists.xmission.com "help"
  277. Administrator:  twegner@fractint.org
  278. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  279.  
  280. ------------------------------
  281.  
  282. Date: Thu, 27 Apr 2000 17:43:16 -0300
  283. From: "Ricardo M. Forno" <rforno@afip.gov.ar>
  284. Subject: RE: (fractint) MandelbrotMix4 lakes
  285.  
  286. I already was able to connect to your page at the end. Thanks a lot. Very
  287. beautiful fractals, especially the "glasses".
  288. My book is not selling very well. I gave it no charge to some
  289. "personalities" in the production of TV shows, etc.
  290. - ----- Original Message -----
  291. From: Fliguer, Miguel <M_Fliguer@unifon.com.ar>
  292. To: <fractint@lists.xmission.com>
  293. Sent: Thursday, April 27, 2000 3:10 PM
  294. Subject: RE: (fractint) MandelbrotMix4 lakes
  295.  
  296.  
  297. > It works from here.
  298. >
  299. > You can try using xoom's numerical ip address :
  300. >
  301. > http://206.132.163.167/fliguer/franktal.html
  302. >
  303. > (You can't see the graphics in this way)
  304. >
  305. > If you can connect to the page, that means your
  306. > browser can't resolve xoom's address because of a local
  307. > DNS problem.
  308. >
  309. > How's your book selling ? ;-)
  310. >
  311. > -----Mensaje original-----
  312. > De: Ricardo M. Forno [mailto:rforno@afip.gov.ar]
  313. > Enviado el: jueves 27 de abril de 2000 13:32
  314. > Para: fractint@lists.xmission.com
  315. > Asunto: RE: (fractint) MandelbrotMix4 lakes
  316. >
  317. >
  318. > Miguel:
  319. > After several attempts, I was unable to connect to your page.
  320. > Do you know what is going on?
  321. >
  322. > ----- Original Message -----
  323. > From: Fliguer, Miguel <M_Fliguer@unifon.com.ar>
  324. > To: <fractint@lists.xmission.com>
  325. > Sent: Wednesday, April 26, 2000 5:57 PM
  326. > Subject: RE: (fractint) MandelbrotMix4 lakes
  327. >
  328. >
  329. > > Guy wrote :
  330. > >
  331. > > >> Oohhh.. thanks Sylvie, Jim! That's a b'ful playground for little
  332. > > >> animations (and tests)!!
  333. > >
  334. > > Check out "Mandelbrot SunSet" at
  335. > > http://members.xoom.com/fliguer/gallery5.html
  336. > > for a 570K AVI which features the "lake" effect.
  337. > >
  338. > > Regards,
  339. > > Miguel
  340. > >
  341. > >
  342. > > --------------------------------------------------------------
  343. > > Thanks for using Fractint, The Fractals and Fractint Discussion List
  344. > > Post Message:   fractint@lists.xmission.com
  345. > > Get Commands:   majordomo@lists.xmission.com "help"
  346. > > Administrator:  twegner@fractint.org
  347. > > Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  348. >
  349. >
  350. > --------------------------------------------------------------
  351. > Thanks for using Fractint, The Fractals and Fractint Discussion List
  352. > Post Message:   fractint@lists.xmission.com
  353. > Get Commands:   majordomo@lists.xmission.com "help"
  354. > Administrator:  twegner@fractint.org
  355. > Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  356. >
  357. > --------------------------------------------------------------
  358. > Thanks for using Fractint, The Fractals and Fractint Discussion List
  359. > Post Message:   fractint@lists.xmission.com
  360. > Get Commands:   majordomo@lists.xmission.com "help"
  361. > Administrator:  twegner@fractint.org
  362. > Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  363.  
  364.  
  365. - --------------------------------------------------------------
  366. Thanks for using Fractint, The Fractals and Fractint Discussion List
  367. Post Message:   fractint@lists.xmission.com
  368. Get Commands:   majordomo@lists.xmission.com "help"
  369. Administrator:  twegner@fractint.org
  370. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  371.  
  372. ------------------------------
  373.  
  374. Date: Fri, 28 Apr 2000 16:49:10 +1200
  375. From: "Morgan L. Owens" <packrat@nznet.gen.nz>
  376. Subject: Re: (fractint) sqr() function considered harmful.
  377.  
  378. At 17:00 27/04/2000 +0100, Iain G, Stirling wrote:
  379. >> 
  380. >> The second comma should be a colon; as things stand all four statements are
  381. >> executed with every iteration, instead of only the last two.
  382. >
  383. >This might account for the difference we see. With my formulae, c is 
  384. >reinitialised, and so takes on a fresh magnitude every iteration. With 
  385. >your formulae, c is repeatedly diminshed, through 150 iterations 
  386. >(assuming you have left the default maxiter value). Surely at some 
  387. >point, the value is diminshed until it cannot be represented in floating 
  388. >point any more, and it just takes the value zero. Then, perhaps the 
  389. >particular function (*, ^ or sqr()) has an optimisation for the zero case, 
  390. >allowing it perform very well? (This is just a hunch, mind you.)
  391. By that argument, * and sqr() should work really well, as ^ doesn't get the
  392. opportunity to see that the expression is approaching zero (so to speak).
  393. But the vanishing towards zero does sound like something that could affect
  394. timings. I'll do that :<->, swap you suggest on the weekend.
  395.  
  396. >
  397. >So it can be seen that beyond n=4, multiplication is worst, and powers 
  398. >and sqr fight over it, with sqr being successful on n=5,6 and 8.
  399. >
  400. sqr would be at its best when n is a power of 2. I might try comparing ^
  401. and sqr for these values of n and see just how much of a fight sqr puts up
  402. (assuming my timings start making sense).
  403.  
  404. Morgan L. Owens
  405. "It's not an expense - it's an investment."
  406.  
  407.  
  408. - --------------------------------------------------------------
  409. Thanks for using Fractint, The Fractals and Fractint Discussion List
  410. Post Message:   fractint@lists.xmission.com
  411. Get Commands:   majordomo@lists.xmission.com "help"
  412. Administrator:  twegner@fractint.org
  413. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  414.  
  415. ------------------------------
  416.  
  417. Date: Fri, 28 Apr 2000 16:44:48 +1200
  418. From: "Morgan L. Owens" <packrat@nznet.gen.nz>
  419. Subject: RE: (fractint) sqr() function considered harmful.
  420.  
  421. At 15:50 27/04/2000, Robin wrote:
  422. >As an aside while benchmarkings are being discussed:
  423. >
  424. >>then took the timing information
  425. >>from the resulting series of gifs.
  426. >
  427. >If you invoke fractint with the option "debugflag=1"
  428. >(or debugflag=any odd number     actually)
  429. >it will write a text file with time stamps for all fractals generated with
  430. >sub-second precision.
  431. >
  432. I really should look at that .doc file one day :-). This will certainly
  433. make my monitor happy! Hey, that means I don't even need to save any gifs!
  434.  
  435. Morgan L. Owens
  436. "clickclickclickclick"
  437.  
  438.  
  439.  
  440. - --------------------------------------------------------------
  441. Thanks for using Fractint, The Fractals and Fractint Discussion List
  442. Post Message:   fractint@lists.xmission.com
  443. Get Commands:   majordomo@lists.xmission.com "help"
  444. Administrator:  twegner@fractint.org
  445. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  446.  
  447. ------------------------------
  448.  
  449. Date: Fri, 28 Apr 2000 01:20:26 -0400 (EDT)
  450. From: Jim Muth <jamth@mindspring.com>
  451. Subject: (fractint) FOTD, 28-04-00  (Red Dwarf [5])
  452.  
  453. FOTD -- April 28, 2000  (Rating 5)
  454.  
  455. Fractal visionaries and enthusiasts:
  456.  
  457. I named today's average fractal "Red Dwarf", though perhaps 
  458. "Green Dwarf" or "Lilac Dwarf" would be more appropriate.  (No, 
  459. it is not named after a sci-fi TV show.)  The illustrated midget 
  460. is actually a scene in the fractal that results when the 
  461. expression 0.95Z-Z^101+C is iterated.  These baby Mandelbrots 
  462. are called midgets.  I have never heard one referred to as a 
  463. dwarf, though the name would be equally correct.
  464.  
  465. Today's parameter file renders in a little more than two minutes 
  466. on an average Pentium.  Downloading the image from:
  467.  
  468.           <alt.binaries.pictures.fractals>
  469.  
  470. or from:
  471.  
  472.           <http://home.att.net/~Paul.N.Lee/FotD/FotD.html>
  473.  
  474. is still the faster way of viewing the scene.
  475.  
  476. The cold, clammy, dreary and drizzly weather kept the cats 
  477. indoors all day.  The temperature of 45F (7C) kept the house 
  478. heat going in what is normally a warm time of year.
  479.  
  480. As can be gathered from the terseness of the discussion, the 
  481. philosophy went nowhere today -- perhaps because my particular 
  482. philosophy has nowhere it could go, but more likely because I 
  483. was simply too busy.  After all, anyone who spends as much time 
  484. searching for fractals as I do can't have that much time left 
  485. for deep thinking.
  486.  
  487. Until next time, take care, and think about it.
  488.  
  489.  
  490. Jim Muth
  491. jamth@mindspring.com
  492.  
  493.  
  494. START 20.0 PAR-FORMULA FILE================================
  495.  
  496. Red_Dwarf          { ; time=0:02:22.45, SF5 on a p200
  497.                      ;  Version 2000 Patchlevel 9
  498.   reset=2000 type=formula formulafile=critical.frm
  499.   formulaname=MandelbrotMix4 function=ident passes=t
  500.   center-mag=+0.10939053115958090/+0.00013913783754621\
  501.   /7534114/1/154.999 params=-1/101/0.95/1/0/0 float=y
  502.   maxiter=1800 bailout=25 inside=0 logmap=45
  503.   symmetry=none periodicity=10
  504.   colors=00049K044034034014<3>004004013041081163364446\
  505.   646848939B3BC1BE1CG1EH0GJ0GK0HM0JN0JT1PX4T<2>jEgnHkr\
  506.   KqvNtzQzzTzzWzzXzrWzYUnCTb0SQ<2>1XY6_`9`cEbfHcgMfj<3\
  507.   >_mtcnwfoyckrbgk`ce__YYWTMsnKvqKysKzvPKgTMkYMnbNrfNt\
  508.   jPynPzrSwvTszUozXm<2>z`bz0zz0zz0rz0j<2>z8MY0zT0zP3z<\
  509.   2>9Hz4Mz0Qz4Wz8_sBcmEgfJkYMoSPsKSwCUz4Yy6`w6ct6<2>ko\
  510.   6nm6rk6ti6wg6ze6zc6z`6z_6z`CzbHzbMwcQteUreYqfbnffkgj\
  511.   iinfircjvbjzcizcgzcfzefzeezeczebzfbzf`zf_zfYz<3>gWz`\
  512.   YrW`jQbcKeWEfN8iG1j60m00n00q0<3>0v00w00y0<3>6z08z19z\
  513.   1Bz3Cz3Ez4Ez4<3>Ee4E`4Gc6He6Hf8Jg8Ki9Kk9MmBNnBNoCPqC\
  514.   QsEQtESvGTwGTyGYzJczKgzMmzN<2>zzSzzTzzUzzSqzPizNmzCo\
  515.   z1rz0Wzt`zofzjkzeqz_vzUzzPzzJzzEzzJzzNyzQvzUrzXnz`jz\
  516.   egzgczk_znWzrTztSzvSzvSzwSzwSzy<2>Szz<2>CzzEzzEzyEzt\
  517.   EzqEzmEzgEzcEz_GzWGzSGzMGzHSzTKzNCzH
  518.   }
  519.  
  520. frm:MandelbrotMix4 {; Jim Muth
  521. a=real(p1), b=imag(p1), d=real(p2), f=imag(p2),
  522. g=1/f, h=1/d, j=1/(f-b), z=(-a*b*g*h)^j,
  523. k=real(p3)+1, l=imag(p3)+100, c=fn1(pixel):
  524. z=k*((a*(z^b))+(d*(z^f)))+c,
  525. |z| < l
  526. }
  527.  
  528. END 20.0 PAR-FORMULA FILE==================================
  529.  
  530.  
  531. - --------------------------------------------------------------
  532. Thanks for using Fractint, The Fractals and Fractint Discussion List
  533. Post Message:   fractint@lists.xmission.com
  534. Get Commands:   majordomo@lists.xmission.com "help"
  535. Administrator:  twegner@fractint.org
  536. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  537.  
  538. ------------------------------
  539.  
  540. Date: Fri, 28 Apr 2000 10:23:53 -0400
  541. From: Tom Conally <conally@netpath.net>
  542. Subject: (fractint) Kaleidoscope
  543.  
  544. Hi Gang,
  545. My first new par in a while.
  546. This par when color-cycled looks as much like a kaleidoscope as any I've
  547. seen. 
  548.  
  549. kaleidoscope       { ; Kaleidoscope (c)Tom Conally, 4/2000
  550.                   ; cycle color for kaleidoscope effect
  551.                      ; t=26.04sec on p400                      
  552.                      ; Version 2000 Patchlevel 9
  553.                       reset=2000 type=julia(fn||fn) function=exp/sqr passes=1
  554.   center-mag=+0.31781005849828920/-1.32276153613428900/8.573609/1.0309
  555.   params=0/0/8 float=y maxiter=1000 bailout=128 bailoutest=manh
  556.   fillcolor=1 outside=real logmap=yes decomp=32
  557.   colors=WWWXNM<3>XjKWpJYEN<11>mgYnjZol_<3>uwcXDN<12>KWMJXMIZM<3>EdLXCN<9>\
  558.   OIJNJJNKJ<3>JMHJMGING<3>EQEZCO<4>jBYlBZoA`<3>y9hQELJGIBJFXCN<6>aIHaJGbKF\
  559.   <3>dNBeNAfO9<2>hR6XEM<3>ZOIZQH_TGWCN<14>CENAEN9EN<3>3FOXEN<2>XKNWDNXMN<3\
  560.   >WUMWWMWYMV_LLVKAPJ<10>eHChGCkGB<3>wC8<4>aIPXJTTKW<3>AQj<4>AiW<2>AuN<4>C\
  561.   eQCbQC_R<3>EOTFLUFIVGEVGBW<3>KLKMNHNQEOSBPV8RY4<13>RhfRiiRik<3>SmwkbK<12\
  562.   >qYkrYmrXp<3>uVy<3>umqtrnvov<2>jos
  563.   }
  564.  
  565.  
  566. Tom Conally
  567.  
  568. In every boomerang there is a perfect throw.
  569. Your life, Grasshopper, is to practice
  570. till you find that throw
  571. and become one with that boomerang!
  572. http://fly.to/boomerangs  " Flying Frog Boomerangs"
  573. http://www.vstore.com/vstorehardware/flyingfrogtools/  "Flying Frog Tools"
  574. http://www.netpath.net/~conally   My greater internet index
  575.  
  576. - --------------------------------------------------------------
  577. Thanks for using Fractint, The Fractals and Fractint Discussion List
  578. Post Message:   fractint@lists.xmission.com
  579. Get Commands:   majordomo@lists.xmission.com "help"
  580. Administrator:  twegner@fractint.org
  581. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  582.  
  583. ------------------------------
  584.  
  585. Date: Fri, 28 Apr 2000 20:05 0000
  586. From: comdotatdotcom@csi.com
  587. Subject: RE: RE: (fractint) sqr() function considered harmful.
  588.  
  589. Hi Morgan,
  590.  
  591. >I really should look at that .doc file one day :-). This will certainly
  592. >make my monitor happy! Hey, that means I don't even need to save
  593. >any gifs!
  594.  
  595. Well if you really want to check out the effect of using different ways of
  596. raising to powers you could  save those gifs and then use debugflag=50
  597. to detect any differences in the images... though I guesss that the file
  598. size would be a good indicater too, you'd probably get differeces in the
  599. size as a few pixels difference would compress differently.
  600.  
  601. If you do get differences then passes=g would be out as a valid
  602. benchmarking method too... Gets more compicated the more you think
  603. about it :-)
  604.  
  605. Cheers,
  606.         Robin.
  607.  
  608. Then again, how do you tell which one's the right one?
  609.  
  610.  
  611. - --------------------------------------------------------------
  612. Thanks for using Fractint, The Fractals and Fractint Discussion List
  613. Post Message:   fractint@lists.xmission.com
  614. Get Commands:   majordomo@lists.xmission.com "help"
  615. Administrator:  twegner@fractint.org
  616. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  617.  
  618. ------------------------------
  619.  
  620. Date: Sat, 29 Apr 2000 09:47:40 -0400 (EDT)
  621. From: Jim Muth <jamth@mindspring.com>
  622. Subject: (fractint) FOTD, 29-04-00  (Sugar-Plum Midget [6])
  623.  
  624. FOTD -- April 29, 2000  (Rating 6)
  625.  
  626. Fractal visionaries and enthusiasts:
  627.  
  628. The discussion is a little late again today because I once again 
  629. took a moment to relax after the day's work, and next thing I 
  630. knew it was 7:30am.  But all is not lost, for while dozing I 
  631. dreamed of sugar-plums.  Now I'm not sure that I would recognize 
  632. a sugar-plum if I saw one.  All I know about them is that 
  633. they're found around nutcrackers.  And how I know that the 
  634. things I dreamed of were sugar-plums when I wouldn't recognize 
  635. one is a secret that I will never reveal.
  636.  
  637. (Actually, it might not be a bad idea to start writing my FOTD 
  638. discussion in the morning, when I'm fresh and the ideas are 
  639. plentiful, rather than late in the evening, when I'm groggy and 
  640. want only a nice long rest.)
  641.  
  642. I might have given the name "Sugar-Plum Midget" to another FOTD 
  643. several years ago.  The name seems vaguely familiar, but I don't 
  644. remember for certain.  Regardless, today's picture has been 
  645. given the name because it reminds me of a midget surrounded by 
  646. sugar plums.
  647.  
  648. The formula behind all the candy is 1.4(Z^129)+1.05(Z)+(1/C), an 
  649. expression that appears rather boring at first glance.  But then 
  650. Z^2+C also appears boring and too simple to do anything, and 
  651. look what *it* started.
  652.  
  653. I'm getting interested in mixing high and low powers of Z, so 
  654. more images of this type are likely in the days to come.  The 
  655. parameter file takes over 22 minutes to render on an average 
  656. Pentium.  For relief, the image has been posted for over 12 
  657. hours to:
  658.  
  659.           <alt.binaries.pictures.fractals>
  660.  
  661. It may also be found on Paul Lee's web site at:
  662.  
  663.           <http://home.att.net/~Paul.N.Lee/FotD/FotD.html>
  664.  
  665. The fractal weather was cloudy and cool, with some sun in the 
  666. afternoon, but not nearly enough to lure the fractal cats 
  667. outdoors.  The fractal temperature reached 60F (15.5C for the 
  668. rest of the world) -- too cool to bring out the cats.  As a 
  669. result, the cats spent the day indoors.
  670.  
  671. The fractal philosophy list needs another kick in the pants, 
  672. which I might give it with a controversial statement or two in 
  673. the near future.  But for today, we've come to the end of the 
  674. line.  Until next time, take care, and enjoy the peace that only 
  675. fractals bring.
  676.  
  677.  
  678. Jim Muth
  679. jamth@mindspring.com
  680.  
  681.  
  682. START 20.0 PAR-FORMULA FILE================================
  683.  
  684. Sugar-Plum_Midget  { ; time=0:22:20.31, SF5 on a P200
  685.                      ;  Version 2000 Patchlevel 9
  686.   reset=2000 type=formula formulafile=critical.frm
  687.   formulaname=MandelbrotMix4 function=recip passes=1
  688.   center-mag=-21.35172450881101000/+0.3544097800329110\
  689.   0/1.516326e+007/1/-24.999 params=1/129/0.75/1/0.4/0
  690.   float=y maxiter=3600 bailout=25 inside=0 logmap=301
  691.   symmetry=none periodicity=0
  692.   colors=500ACK<2>3AK<2>CGKFIKIKI<6>bY8e_7ha5<3>th0<3>\
  693.   YbESaHM`L<3>0WY<13>5T`6T`6Sa<2>7Sa7Sa9Q`<14>VAWX9VY8\
  694.   V<3>c4U<12>kXdlZel`e<2>nfhnhhmge<10>lZFkYDkXA<3>kU1<\
  695.   3>km3kr4kv4<8>OkRLjTIiW<3>8ed<5>YTXbRWfPV<3>wHQ<3>wE\
  696.   VwDWwCXv9V<3>xIdxKfyNjyPnyRszTwzVzzXzzVzzUxwTvuStsQr\
  697.   qNrpLqnIqmEqlCq<3>f7pe6pc5p<2>_5pZ5pX7q<3>RFrPHrNIr<\
  698.   3>HLsGMtENt<3>8RuASuCTxESy<3>MPzOPzQOzSNz<6>_Jz`IzaH\
  699.   zbHzcGzdHzeGzfGz<3>mFzoFzqFzsFzuFz<2>yEzzEzzEz<3>zDz\
  700.   z9z<3>zNzzQzzIz<7>zCz
  701.   }
  702.  
  703. frm:MandelbrotMix4 {; Jim Muth
  704. a=real(p1), b=imag(p1), d=real(p2), f=imag(p2),
  705. g=1/f, h=1/d, j=1/(f-b), z=(-a*b*g*h)^j,
  706. k=real(p3)+1, l=imag(p3)+100, c=fn1(pixel):
  707. z=k*((a*(z^b))+(d*(z^f)))+c,
  708. |z| < l
  709. }
  710.  
  711. END 20.0 PAR-FORMULA FILE==================================
  712.  
  713.  
  714. - --------------------------------------------------------------
  715. Thanks for using Fractint, The Fractals and Fractint Discussion List
  716. Post Message:   fractint@lists.xmission.com
  717. Get Commands:   majordomo@lists.xmission.com "help"
  718. Administrator:  twegner@fractint.org
  719. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  720.  
  721. ------------------------------
  722.  
  723. Date: Sun, 30 Apr 2000 00:20:04 +0200
  724. From: "J.P. Louvet" <louvet@hse.iuta.u-bordeaux.fr>
  725. Subject: (fractint) Re: [fractal-art] Fractal art FAQ
  726.  
  727. Terry and all other fractal lovers,
  728.  
  729. What you write is exactly what I think. I can write broad lines about some
  730. programs (being more experimented with some of them) but I have said several
  731. times that this attempt to have a fractal art FAQ needed a collective
  732. participation to be useful and objective. Unfortunately I have received only
  733. very few contributions and this goal doesn't seem to interest many people. I
  734. think that it is not a question of time when I see, for example the
  735. overabundant exchange of parameters and formulae in the UF list and, to a
  736. less extent in the Fractint list.
  737.  
  738. Well, I will post also this reply in these 2 lists.
  739.  
  740. I have some material to do a new version of the draft and I will take my
  741. responsibility, Tim, about the text describing the programs. But this effort
  742. will be more useful if I have more contributory feedbacks.
  743. Waiting for that I acknowledge in advance those who will accept to help the
  744. fractal community, specially the beginners (note that I don't say "those who
  745. will help  me" because this is not what is important).
  746.  -------------------------------------------------------------------------
  747.  J.P. Louvet                | Phone :  (33)05-56-84-58-35
  748.  IUT Universite Bordeaux I  |
  749.  33405 Talence CEDEX France | email : louvet@hse.iuta.u-bordeaux.fr
  750.  -------------------------------------------------------------------------
  751. - ----- Original Message -----
  752. From: "Terry W. Gintz" <terrywg@home.com>
  753. To: <fractal-art@lists.fractalus.com>
  754. Sent: Saturday, April 29, 2000 11:22 PM
  755. Subject: Re: [fractal-art] Fractal art FAQ
  756.  
  757.  
  758. > Tim,
  759. >
  760. > I agree entirely with this.  I also have great respect for Jean-Pierre's
  761. > views.  He's always been able to point out weaknesses in my programs
  762. without
  763. > 'inflaming my stys.'  He's also provided insightful suggestions for
  764. > improvement.  If he can't write a fair description for each fractal
  765. program
  766. > as it now exists, then I don't know who could.  But he's also quite right
  767. > when he asks for "the opinions of many people."   Jean-Pierre hasn't used
  768. > every program around, or to the same depth, so some omissions/inaccuracies
  769. > are unavoidable, unless...  If J-P is to act as a moderator, so to speak,
  770. he
  771. > should have all the pertinent information about each program(in the
  772. broadest
  773. > scope of the FAQ), and what the authors/users see as strengths and
  774. > weaknesses.  Finally, everyone should realize the license and
  775. responsibility
  776. > that Jean-Pierre takes in writing this version of the FAQ, and limit their
  777. > criticisms to constructive, rather than ***** feedback.
  778. >
  779. > Terry W. Gintz
  780.  
  781.  
  782.  
  783. - --------------------------------------------------------------
  784. Thanks for using Fractint, The Fractals and Fractint Discussion List
  785. Post Message:   fractint@lists.xmission.com
  786. Get Commands:   majordomo@lists.xmission.com "help"
  787. Administrator:  twegner@fractint.org
  788. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  789.  
  790. ------------------------------
  791.  
  792. Date: Sun, 30 Apr 2000 01:00:39 -0400 (EDT)
  793. From: Jim Muth <jamth@mindspring.com>
  794. Subject: (fractint) FOTD, 30-04-00  (Double-Minus Brot [4])
  795.  
  796. FOTD -- April 30, 2000  (Rating 4)
  797.  
  798. Fractal visionaries and enthusiasts:
  799.  
  800. Today I trimmed the overgrown fractal lawn, giving myself a 
  801. stiff back and a great excuse to do nothing but explore fractal 
  802. land for the rest of the day.  My fractal theme of the day was 
  803. all negative parameters and no fractional powers.  I started 
  804. with -1(Z^(-2))-2(1/Z)+(1/C).  I named the picture "Double-
  805. Minus Brot" because of the two negative exponents.
  806.  
  807. It's another of those simple formulae that promise little but 
  808. deliver much.  In fact, the only change I made was to raise the 
  809. bailout radius to 1400, which broke the fractal into interesting 
  810. segments, separated by curious holes.
  811.  
  812. The rating for this fractal effort can only be an honest 
  813. somewhat-below-average 4, not quite worth the 15 minutes 
  814. required to run the parameter file, but at least worth the 
  815. minimal effort of downloading the pre-rendered image from Usenet 
  816. at:
  817.  
  818.           <alt.binaries.pictures.fractals>
  819.  
  820. or from the WWW at:
  821.  
  822.           <http://home.att.net/~Paul.N.Lee/FotD/FotD.html>
  823.  
  824. The fractal weather today was unexpectedly bright and warm, with 
  825. sunny skies and a temperature of 68F (20C), which brought out 
  826. the little bit of friskiness left in the fractal cats.
  827.  
  828. The philosophy is cooking right on schedule, so stay in touch 
  829. with the philofractal list all you frustrated fractal philosophy 
  830. fans for some fantastic philosophizing in the fairly near future.
  831.  
  832. Right now it's time for my Saturday evening spell in front of 
  833. the TV, watching some junky sci-fi.  I think it's Dr. Who this 
  834. evening in "Meglos".  That's the one with the dodecahedron god 
  835. and the cactus Doctor.  I'll return tomorrow, same time same 
  836. venue.  Until then, take care, and keep a stiff upper fractal.
  837.  
  838.  
  839. Jim Muth
  840. jamth@mindspring.com
  841.  
  842.  
  843. START 20.0 PAR-FORMULA FILE================================
  844.  
  845. Double-Minus_Brot  { ; time=0:15:10.72, SF5 on a P200
  846.                      ;  Version 2000 Patchlevel 9
  847.   reset=2000 type=formula formulafile=critical.frm
  848.   formulaname=MandelbrotMix4 function=recip passes=1
  849.   center-mag=+2.350341334507803/+4.094891764521559/2.0\
  850.   04851e+010/1/142.383/0.035 params=-1/-2/-2/-1/0/1300
  851.   float=y maxiter=1600 inside=0 logmap=171
  852.   symmetry=none periodicity=10
  853.   colors=000WDD<3>`3Ha1HZ0I<7>G0NE0OB0P<3>20R<9>bB`fCa\
  854.   jDb<3>xHe<7>RRMNSKITH<3>2X8<3>4PW4Na4Lf<3>PahUehZji<\
  855.   3>rzj<3>dqp`oqYls<3>Kdx<9>UItVGsWEs<3>_5r<9>fcqgfqhj\
  856.   q<2>jtqjwqlsr<4>q_tsWutSu<3>xCxy8yt9z<7>ODzKDzGEz<3>\
  857.   0Fz<3>9JzBKzALzFMz<2>LPzNPzOSz<3>QazQczKXz<3>08z<3>A\
  858.   MzCPzESzGVz<7>9Jz8Hz7Gz<3>4Az<6>4Lz4Mz4Oz<3>4Tz<3>II\
  859.   zMFzPCzSAz<7>J5zI4zH4z<3>D2z<4>aMz<2>pXz`azMfz<7>gkz\
  860.   ilzllz<3>vnz<5>bizZhzWhz<3>Jez<4>`qz
  861.   }
  862.  
  863. frm:MandelbrotMix4 {; Jim Muth
  864. a=real(p1), b=imag(p1), d=real(p2), f=imag(p2),
  865. g=1/f, h=1/d, j=1/(f-b), z=(-a*b*g*h)^j,
  866. k=real(p3)+1, l=imag(p3)+100, c=fn1(pixel):
  867. z=k*((a*(z^b))+(d*(z^f)))+c,
  868. |z| < l
  869. }
  870.  
  871. END 20.0 PAR-FORMULA FILE==================================
  872.  
  873.  
  874. - --------------------------------------------------------------
  875. Thanks for using Fractint, The Fractals and Fractint Discussion List
  876. Post Message:   fractint@lists.xmission.com
  877. Get Commands:   majordomo@lists.xmission.com "help"
  878. Administrator:  twegner@fractint.org
  879. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  880.  
  881. ------------------------------
  882.  
  883. Date: Sun, 30 Apr 2000 18:53:17 +1200
  884. From: "Morgan L. Owens" <packrat@nznet.gen.nz>
  885. Subject: Re: (fractint) sqr() function considered harmful?
  886.  
  887. At 16:49 28/04/2000 +1200, I wrote:
  888. > I'll do that :<->, swap you suggest on the weekend.
  889. >
  890. The formulae I ended up with were things like:
  891.  
  892. sqr05{z=0:c=sqr(sqr(pixel))*pixel,|z|<=4}
  893.  
  894. I switched to pixel instead of rand so that I didn't have the RNG slowing
  895. things down. It also meant that I didn't need to explicitly initialise c to
  896. anything.
  897.  
  898. The running conditions are as for my first experiment: a DOS boot,
  899. 1600x1200x256 resolution, 1023 iterations and passes=g (with passes=1 I'd
  900. be iterating something like a thousand times as many pixels). In all,
  901. roughly two million iterations per formula. (I'm only rough because
  902. passes=g is more thorough than one pixel per 1024-pixel block around the
  903. edges.)
  904.  
  905. My new timings (in seconds are)
  906.  
  907.  n  power  mult   sqr
  908.  0  15.16  14.22  14.23
  909.  1  14.83  14.50  14.50
  910.  2  14.72  14.83  14.83
  911.  3  38.34  16.37  16.26
  912.  4  38.56  17.52  15.87
  913.  5  38.50  18.51  17.30
  914.  6  38.45  20.05  17.30
  915.  7  38.50  21.26  18.35
  916.  8  38.50  21.20  16.75
  917.  9  38.50  22.30  18.34
  918. 10  38.51  23.07  18.18
  919. 11  38.50  26.20  18.95
  920. 12  38.56  27.19  18.29
  921. 13  38.56  25.98  19.34
  922. 14  38.55  26.86  19.00
  923. 15  38.61  27.84  20.44
  924. 16  38.56  32.08  17.96
  925.  
  926. Which does look a lot more sensible.
  927.  
  928. One thing to notice is that repeated multiplication performs much better
  929. here against exponentiation: even z^16 appears to run slightly slower than
  930. z*z*z*z*z*z*z*z*z*z*z*z*z*z*z*z! Exponentiation is pretty much constant
  931. around 38 1/2 seconds, increasing only slowly, though treating n=0, 1, 2 as
  932. special cases. z*z also appears to be converted to sqr(z) when it appears.
  933.  
  934. However, z*z*z and sqr(z)*z are slightly different. This suggests that
  935. Fractint doesn't spot the "z*z" in the cube expression; the extra time to
  936. look up 'z' _three_ times instead of two makes for an extra tenth of a
  937. second (out of two million iterations?! What are you complaining about?)
  938.  
  939. Of the three methods, repeated squaring appears to be the fastest approach
  940. to writing hardwired integer powers; instead of saying z^9 or
  941. z*z*z*z*z*z*z*z*z, sqr(sqr(sqr(z)))*z offers clear speed advantages.
  942.  
  943. These results are in conflict with those of Iain Stirling's, which say that
  944. repeated multiplication is slower than the other two, which are on a par
  945. with each other. I'm wondering if this may be a result of my switching to
  946. using pixel as the source for my test data instead of randomly-generated
  947. numbers?
  948.  
  949.  
  950. But in the quest for maximum speed in user formulae, the story doesn't end
  951. here. Consider this alternative method for writing z^15:
  952.  
  953. z=sqr(sqr(z))*z,z=sqr(z)*z
  954.  
  955. This saves an extra multiplication of the more straightforward repeated
  956. squaring method, which gives
  957.  
  958. z=sqr(sqr(sqr(z)*z)*z)*z
  959.  
  960. And if, as one often does, wish to calculate a number of powers of a
  961. variable, then it makes sense to reuse results as much as possible, rather
  962. than calculate them fresh each time; if you've calculated w=sqr(z)*z
  963. already, it makes more sense to calculate z^4 as w*z instead of
  964. sqr(sqr(z)). The ultimate in this field is still an open problem - in
  965. mathematics, not just in Fractint.
  966.  
  967. Morgan L. Owens
  968. "Embarras de richesses"
  969.  
  970.  
  971.  
  972. - --------------------------------------------------------------
  973. Thanks for using Fractint, The Fractals and Fractint Discussion List
  974. Post Message:   fractint@lists.xmission.com
  975. Get Commands:   majordomo@lists.xmission.com "help"
  976. Administrator:  twegner@fractint.org
  977. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  978.  
  979. ------------------------------
  980.  
  981. Date: Sun, 30 Apr 2000 17:40:36 +0100
  982. From: "Iain G. Stirling" <Iain@flat2-2.freeserve.co.uk>
  983. Subject: Re: (fractint) sqr() function considered harmful?
  984.  
  985. Morgan L. Owens wrote:
  986.  
  987. > At 16:49 28/04/2000 +1200, I wrote:
  988. > > I'll do that :<->, swap you suggest on the weekend.
  989. > >
  990. > The formulae I ended up with were things like:
  991. > sqr05{z=0:c=sqr(sqr(pixel))*pixel,|z|<=4}
  992. > I switched to pixel instead of rand so that I didn't have the RNG slowing
  993. > things down. It also meant that I didn't need to explicitly initialise c to
  994. > anything.
  995. > The running conditions are as for my first experiment: a DOS boot,
  996. > 1600x1200x256 resolution, 1023 iterations and passes=g (with passes=1 I'd
  997. > be iterating something like a thousand times as many pixels). In all,
  998. > roughly two million iterations per formula. (I'm only rough because
  999. > passes=g is more thorough than one pixel per 1024-pixel block around the
  1000. > edges.)
  1001. > My new timings (in seconds are)
  1002. >  n  power  mult   sqr
  1003. >  0  15.16  14.22  14.23
  1004. >  1  14.83  14.50  14.50
  1005. >  2  14.72  14.83  14.83
  1006. >  3  38.34  16.37  16.26
  1007. >  4  38.56  17.52  15.87
  1008. >  5  38.50  18.51  17.30
  1009. >  6  38.45  20.05  17.30
  1010. >  7  38.50  21.26  18.35
  1011. >  8  38.50  21.20  16.75
  1012. >  9  38.50  22.30  18.34
  1013. > 10  38.51  23.07  18.18
  1014. > 11  38.50  26.20  18.95
  1015. > 12  38.56  27.19  18.29
  1016. > 13  38.56  25.98  19.34
  1017. > 14  38.55  26.86  19.00
  1018. > 15  38.61  27.84  20.44
  1019. > 16  38.56  32.08  17.96
  1020. > Which does look a lot more sensible.
  1021. > One thing to notice is that repeated multiplication performs much better
  1022. > here against exponentiation: even z^16 appears to run slightly slower than
  1023. > z*z*z*z*z*z*z*z*z*z*z*z*z*z*z*z! Exponentiation is pretty much constant
  1024. > around 38 1/2 seconds, increasing only slowly, though treating n=0, 1, 2 as
  1025. > special cases. z*z also appears to be converted to sqr(z) when it appears.
  1026. > However, z*z*z and sqr(z)*z are slightly different. This suggests that
  1027. > Fractint doesn't spot the "z*z" in the cube expression; the extra time to
  1028. > look up 'z' _three_ times instead of two makes for an extra tenth of a
  1029. > second (out of two million iterations?! What are you complaining about?)
  1030. > Of the three methods, repeated squaring appears to be the fastest approach
  1031. > to writing hardwired integer powers; instead of saying z^9 or
  1032. > z*z*z*z*z*z*z*z*z, sqr(sqr(sqr(z)))*z offers clear speed advantages.
  1033. > These results are in conflict with those of Iain Stirling's, which say that
  1034. > repeated multiplication is slower than the other two, which are on a par
  1035. > with each other. I'm wondering if this may be a result of my switching to
  1036. > using pixel as the source for my test data instead of randomly-generated
  1037. > numbers?
  1038.  
  1039. I'm sure that modification could have a large effect. That is the true 
  1040. difficulty of this issue - it really depends on precisely what is being 
  1041. calculated.
  1042.  
  1043.  > But in the quest for maximum speed in user formulae, the story doesn't end
  1044. > here. Consider this alternative method for writing z^15:
  1045. > z=sqr(sqr(z))*z,z=sqr(z)*z
  1046. > This saves an extra multiplication of the more straightforward repeated
  1047. > squaring method, which gives
  1048. > z=sqr(sqr(sqr(z)*z)*z)*z
  1049. > And if, as one often does, wish to calculate a number of powers of a
  1050. > variable, then it makes sense to reuse results as much as possible, rather
  1051. > than calculate them fresh each time; if you've calculated w=sqr(z)*z
  1052. > already, it makes more sense to calculate z^4 as w*z instead of
  1053. > sqr(sqr(z)). The ultimate in this field is still an open problem - in
  1054. > mathematics, not just in Fractint.
  1055.  
  1056. Indeed. I think what we have seen here is that the conventional 
  1057. wisdom of sqr being best is perhaps generally true, but your original 
  1058. tests results show that there _is_ a case where it is not true. However, 
  1059. that case may be degenerate and not apply in a realistic formula...
  1060.  
  1061. On the other hand, the huge difference between this latest set of 
  1062. results and the two previous sets shows that there is no way to predict 
  1063. what is going to happen.
  1064.  
  1065. Maybe it would be interesting as a final experiment to take some very 
  1066. realistic cases, such as a well-known formula (using various powers of 
  1067. z) with a good .PAR creating an image of it, and play about with it?
  1068.  
  1069. I will probably give this a go at some point.
  1070.  
  1071. Iain Stirling.
  1072.  
  1073.  
  1074.  
  1075. - --------------------------------------------------------------
  1076. Thanks for using Fractint, The Fractals and Fractint Discussion List
  1077. Post Message:   fractint@lists.xmission.com
  1078. Get Commands:   majordomo@lists.xmission.com "help"
  1079. Administrator:  twegner@fractint.org
  1080. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractint"
  1081.  
  1082. ------------------------------
  1083.  
  1084. End of fractint-digest V1 #472
  1085. ******************************
  1086.  
  1087.