Linkfest 6

March 9th, 2010

Some more links:

  • Share/Bookmark

beej Links , , , , , , , , , , ,

Parallel Programming with OpenMP

March 7th, 2010

The geek-chic OpenMP logo.

This is a brief intro to using OpenMP for parallel programming (with what I’ve discovered about it so far). We’ll implement a Mandelbrot Set renderer that runs multicore, and throw in a couple aside-goodies as well (basic supersampling and Mandelbrot continuous coloring).

First, let’s talk parallel programming. The basic idea here is that we have some task that can be split up into parts, and we hand off each of these parts to different CPUs.

Read more…

  • Share/Bookmark

beej Programmer , , , , ,

Linkfest 5

February 27th, 2010

More links for ya:

  • Share/Bookmark

beej Links , , , , , , , , , , ,

The Mandelbrot Set

February 26th, 2010

One of the "copies" of the Mandlebrot Set floating somewhere around its outside edge.

And now for something completely different! The Mandelbrot Set! This is the basis for all those paisley computer fractal pictures we see everywhere, especially when they were popular in the 1990s. For your viewing pleasure, a Mandlebrot explorer app is included, with (Flash) source, right down there in this blog post!  Woo!

In this article, I’m going to talk about how the images are generated, and use that as an example of something I find I do quite commonly: remapping number ranges. High excitement, there.

I do apologize in advance that this post is a bit mathy. Now, I was never particularly good with math, so I figure that if I’m grasping it, it must be pretty straightforward (the actual manipulations never get beyond elementary algebra.) But it’s not as easy reading as, say, Captain Blood. If you don’t care for math, I encourage you to just jump, guilt-free, down to the pseudocode and the app! Enjoy!

Read more…

  • Share/Bookmark

beej Programmer , , ,

Linkfest 4

February 21st, 2010

Some links for y’all:

  • Chad’s love of code reviews—and I agree. It can be tough to expose your code to better eyes, but everyone is improved because of it.
  • Review Board—along those lines, here is an open source code review tool that was linked to in the comments for the code-review post.
  • Building Flash Multiplayer Games—a somewhat extended tutorial that I haven’t actually gone through, but looks decent.
  • What Really Happens When You Navigate To A URL. Semi-technical, and informative if you don’t already know it.
  • Factorial Lookup. Ever wonder what 182,731! is? (You might have to give it several seconds to download before it renders.) Sometimes the most practical way to solve difficult (or impossible) problems is to just try to look up the answers in a massive precalculated table. Also see Reverse MD5 Hash Lookup.
  • Arimaa—a modern game played on a chess board with chess pieces, specifically designed to make it difficult to write effective AI to play it.
  • Making Computer Science More Enticing. A good inspirational 2-minute vid at the top, and information about how Stanford University’s revamping of their CS program led to higher enrollment.
  • Understanding Weak References, a Java-oriented article, but generally applicable.
  • Share/Bookmark

beej Links , , , , , , , , , ,