- Mandelbulb formula… -
- 11/16/09 PHD comic: 'Buzzwords' -
- Leaked: Lenovo ThinkPad T410s coming January, minor upgrades -
- Clouds and more clouds - Even J-P who has multiple APODs is getting a bit frustrated!
- Trapping double negative particles in the ray optics regime using optical tweezers with focused beams -
- Highly birefringent vaterite microspheres: production, characterization and applications for optical micromanipulation -
- Design of a NURBS interpolator with minimal feed fluctuation and continuous feed modulation capability -
- Astrophotography with a Canon Telephoto -
- Plastic Boat: The Building of a High-Tech Eco-Stunt - Plastiki
- "Mandelbulb," a 3D Mandlebrot Construct, Discovered - OMG. check these pics!
- Design of a NURBS interpolator with minimal feed fluctuation and continuous feed modulation capability -
- LACERTA M-GEN Stand-Alone Autoguider -
- More Next-Level Musicmaking on YouTube: The ‘Crowdsourced’ Single -
- Underwater Glider Hunts, Records Cryptic Whales -
- High resolution miniature dilatometer based on an atomic force microscope piezocantilever -
- Multiple traps created with an inclined dual-fiber system -
- This hobby can be really dangerous. -
Month: November 2009
Sunday 8k
OpenMP test on i7
Here's a simple piece of c-code (try zipped version) for testing how to parallelize code with OpenMP. It compiles with
gcc -fopenmp -lm otest.c
The CPU-load while running looks like this:
Looks like two logical CPUs never get used (two low lines beyond "5" in the chart). It outputs some timing information:
running with 1 threads: runtime = 17.236827 s clock=17.230000
running with 2 threads: runtime = 8.624231 s clock=17.260000
running with 3 threads: runtime = 5.791805 s clock=17.090000
running with 4 threads: runtime = 5.241023 s clock=20.820000
running with 5 threads: runtime = 4.107738 s clock=20.139999
running with 6 threads: runtime = 4.045839 s clock=20.240000
running with 7 threads: runtime = 4.056122 s clock=20.280001
running with 8 threads: runtime = 4.062750 s clock=20.299999
which can be plotted like this:

I'm measuring the clock-cycles spent by the program using clock(), which I hope is some kind of measure of how much work is performed. Note how the amount of work increases due to overheads related to creating threads and communication between them. Another plot shows the speedup:

The i7 uses Hyper Threading to present 8 logical CPUs to the system with only 4 physical cores. Anyone care to run this on a real 8-core machine ? 🙂
Next stop is getting this to work from a Boost Python extension.
Carbide-insert Lathe Tools
I got tired of sharpening dull high-speed steel tools, so tried some carbide-insert tooling today. Seems to work fine in brass and aluminium. Note ca 1.5 mm thick piece of PCB-material underneath tool which elevates the 12x12mm tool-holder to the center of the chuck (within maybe 0.1mm).
A set of five different tools with 12x12 mm holders. Not sure what all the different shapes are good for, but I'll find out eventually. Would still need a small tool that fits into a 12-13mm hole for internal turning.
Surface finish is better than before. The carbide inserts like high speeds, with our lathe that means running it at the max 1500 rpm for most of the time.
Links - 2009 Nov 12
Learning VTK
I'm trying to learn how to render and animate things using VTK. This is the result of a python-script which outputs a series of PNG-frames. These are then converted to jpegs by this command:
mogrify -format jpg -quality 97 *.png
mencoder mf://*.jpg -mf fps=25:type=jpg -ovc lavc -lavcopts vcodec=mpeg4 -ac copy -o output.avi -ffourcc DX50
This should lead to the revival of my old Drop-Cutter code in the near future. This time it's going to be in C++, with Python bindings, and hopefully use OpenMP. Stay tuned.
One More Feedback Paper
FPGA-based real-time position-clamp control in optical tweezers, The Sequel: doi:10.1063/1.3257693 (first part here)
Milling Steel
And here some pocketing in aluminium:
New WordPress, new Theme
With the latest wordpress upgrade I decided to switch themes. This one is blacker and wider than the previous one, to make more room for wide pictures and videos.















