www.delorie.com/gnu/docs/xaos/xaos_38.html   search  
Buy GNU books!

An fast realtime interactive fractal zoomer

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.4.9 SMP support

Since version 3.0 XaoS suports SMP. This is done using threads. Most of XaoS routines should be threaded easily -- for example moveoldpoints just divides image into n equal part and each part is proceded by one processor. Only unthreaded part is realloc table calculation routines. I don't see any way to paraelize it except it calculates both - x and y approximation at one time (using two processors). Another interesting algorithm to paraelize is boundary trace. See comments btrace.c for discusion about current implementation. Only problem of current implementation I see is possibility, that calculation is divided into too many parts (realloc tables, move points, calcualte, symetries, dynamic resolution) and tasks needs to synchronize between each part. So this should be too slow at real SMP box.

  webmaster     delorie software   privacy  
  Copyright 2003   by The Free Software Foundation     Updated Jun 2003