|Click here to view the newsletter in your browser if your email client garbles it.|
The big news of the fall is the construction of a new system dedicated to rendering fractals, based on Intel's six-core Core i7 980X.
Two new animation projects have been completed on it so far. Prima Luce II is a high-definition remake of the first project rendered with the previous Core2-quad system. The first magnet fractal animation we've done (indeed, one of only a few ever created by anyone) was the next project tackled by this computational beast.
OK. I hate this. I have spent ALL DAY trying to deal with this problem, and there is not a good solution. The problem is that MailChimp, the wonderful free service I have been using to send this newsletter for about two years now, has decided to force click-tracking on me, whether I want it or not. You will notice that none of the links in this email point to hpdz.net, but rather to the MailChimp server, which will record your clicks and downloads of images and gather statistics for me to contemplate. Previously, they let me disable this "feature" but now, they have disabled the ability to disable it. I have sent a complaint to their support people, but since this service is free (as long as I put their little logo in the email somewhere), I am not sure how responsive they will be.
I have looked around for alternatives, creating trial accounts on many other email services, and they ALL do the same thing (except Constant Contact, but they require the email be in XHTML to disable click tracking, and I can't figure out how to make that work, and they are not free anyway -- I love you all, but they cost $15 per month, and since I am only sending this newsletter every two or three months now, that seems ridiculous).
So, I am grudgingly sending this one via MailChimp, which is how every other newsletter has been sent, except now click-tracking is active. If you open this, you will be recorded, and I will know you opened it. If you download the images or click on a link, that will be recorded too, and I will be able to see who clicked on what. So be careful.
New Rendering System
After over two years of service, the previous 2.4 GHz quad-core Core2 system was becoming outdated. It was time to catch up with current technology, and this time HPDZ went all-out and built a system around the six-core Core i7 980X processor installed in an ASUS P6X58D Premium motherboard with 12GB of G.Skill DDR3-1600 memory.
This is not quite the most computing power you can put on a single motherboard, but it is close. A dual-CPU motherboard with two 8-core, 16-thread X7560 Xeon processors is probably the most computer you can put on one board, but at about $4000 per CPU, such a system is not in the budget for 2011.
This system has a PassMark CPU rating of 12194. The overall system rating is 2483.
Full details of the construction of this new system, along with more photographs, are on the website here. Detailed performance evaluation is here.
Prima Luce II
The first animation rendered with the new 980X system was a high-definition remake of the first animation rendered with the previous Core2 quad system, Prima Luce. This time, the project is 1600x900, and the math is set up a little differently so that the fractal looks a bit different, although the same color palette is used.
Go to Prima Luce II main page.
Click on a thumbnail below for a high-definition image from the video project.
The magnet fractals are a fascinating and neglected type of fractal, probably because they are so computationally challenging. The formulas for them are much more complex than the formula for the Mandelbrot set, and maybe there's not a lot of radically new visual content there, so I suspect many fractal artists do not consider them worth the effort. But with this new computing engine ready for a challenge, a deep-zoom animation of a magnet fractal seemed like a perfect project to tackle.
Go to Magnet Zoom main page.
These fractals are derived from a theoretical physics model of how magnetic materials change state from magnetic to non-magnetic, which is where they get their name. The mathematical origins of the equations are interesting, but not important for making cool animations.
A few surprises showed up as I explored this fractal at deep zoom levels. More details are on the main page for this project (see above link). Briefly, this fractal is not connected, but rather is composed of isolated subsets that are not connected to each other. Furthermore, the isolated sets are themselves not simply connected. Both of these features are quite unlike the Mandelbrot set, which is a simply connected set. Finally, notice that the tricorn (or "Mandelbar") fractal is the terminal mini-set of this particular animation. It was a surprise to see this structure here, and I have not seen it appear in any other fractals whose formula does not explicitly include a complex conjugation.
Some earlier still images, along with a brief description of the mathematical origin of these fractals and a reference for further reading, is here.
Animations (Keeping the 980X busy!)
Keeping the 980X busy is going to be fun. This system enables new high-definition videos going to deeper magnifications than before, as well as exploration of different types of fractals with formulas that previously were too computationally expensive.
In particular, I am interested in exploring the extensions to the Metaphase theme developed by Stardust4ever. See stardust4ever.deviantart.com and this YouTube video. These are really fun to see, and this technique can be applied in other areas to generate very interesting repeating patterns.
Of course, exploring other fractals, like Magnet Type II, is also a good thing to work on.
Since its origins about 10 years ago, the software used to generate the images and animations on this site has been based on fixed-point, arbitrary precision arithmetic. That means that the internal high-precision math represents numbers with a single integer "digit" (actually a 32-bit integer) to the left of the decimal point, with an arbitrary number of digits to the right of the decimal point.
This system works fine for many types of fractal formulas, and it has some advantages in speed because the code is relatively simple. But it cannot represent very large numbers, numbers whose integer part is larger than what will fit into a 32-bit value (that is 2^32, or 4,294,967,296, or about 4.3e9). That means that fractals whose formulas involve division, like the Magnet Fractals, can be a problem, because this numer system can represent very small numbers, like 1e-100, but not their reciprocal (1e+100 is much larger than 2^32).
The particular area of the Magnet Fractal in the video above just happens not to require division by any very small numbers, so I was able to zoom into an area about 6e-29 in size. But going much farther, I ran into this limit.
So it's time to get real floating-point arithmetic incorporated into the software. I've been wanting to do this for several years, but it's going to be the next major update to the software now for sure.
CUDA and Parallel GPU Computing
Modern graphics cards are really massively parallel computing systems. Although they are designed primarily to render 3D images at high speed for game playing, the processors in them can be used for other purposes as well, and iterating fractal formulas can be a great application. The potential here is a huge increase in computing power at far lower cost than traditional CPUs. For example, the rather modest EVGA GT240 graphics card I chose for the Core i7 980X system has 96 processor cores running at about 1.3 GHz, and it cost about $80.
I've been considering the potential of parallel GPU processing for about a year. Considering the lower clock speed, less powerful internal architecture, and smaller native word size of the GPU cores, my initial rough estimates were that it would take about half the number of cores in the GT240 to match one quad-core traditional CPU at 3GHz -- for this particular purpose. That's a very rough estimate, more of a SWAG, and not based on any empirical testing, since I have not had a CUDA-capable video card until now. High-end traditional CPUs like the Core i7 series are not only multi-core, but have multiple parallel execution units within each core, so it's very difficult to say exactly how many GPU cores are equivalent to a CPU wihtout doing some testing.
Now, with the CUDA-capable GT240, I will be able to obtain some real results based on actual performance. The potential increase in computing power for a given quantity of money is tremendous, perhaps as much as a factor of 10, so this is worth serious investigation, and results should be coming over the next few months.