[ Home | Docs | News | Resources | Download]
GAUL Documentation: Porting GAUL applications to version 0.1847

Porting Applications from GAUL 0.1846 to 0.1847

A small number of changes in the GAUL API between versions 0.1846 and 0.1847 break backward compatibility. Although most applications will run successfully without changes, some applications will need to be modified. This document describes changes that will need to be made.

PVM support removed

GAUL no longer supports PVM as of version 0.1847. The PVM support was incomplete and undocumented. It is not believed that this was used by any outside developer.

Thread support

Only pthreads are used for threaded versions of the code as of version 0.1847. Consequently, multi-threaded versions of GAUL are now only available where pthreads are also available. Third-party code relying on threaded GAUL code will need to be recompiled if a thread library other than pthreads was used.


Applications using the ga_genesis_int() function should be modified to use ga_genesis_integer() instead. These functions have identical semantics, so this change is trivial.


The simplex search procedure was improved, necessitating a change in the semantics of the ga_population_set_simplex_parameters() function. An additional parameter specifying the initial step size for the simplex search procedure is required. A step size of 1.0 will replicate the original behaviour. The new function prototype is:

void ga_population_set_simplex_parameters( population		*pop,
					const int		dimensions,
					const double		step,
                                        const GAto_double	to_double,
                                        const GAfrom_double	from_double);

Memory chunk bug fixed

Prior to version 0.1847, a bug was exhibited on versions of Solaris, IRIX, HP/UX and possibly other (64-bit) operating systems. The documented workaround was to configure the GAUL library with "./configure --enable-memory-chunks=no". This fix is no longer required. Normal configuration results in enhanced run-time performance and is therefore recommended.

Deprecated functions

A number of functions are now deprecated, including ga_compare_genome(), ga_count_match_alleles(), ga_genome_hamming_similarity() and ga_genome_euclidian_similarity(). At the present time they may be re-enabled by defining the preprocessor constant COMPILE_DEPRECATED_FUNCTIONS prior to compilation. It is strongly recommended that applications relying on these functions are modified.

[ Home | Docs | News | Resources | Download]
Hosted by:
SourceForge Logo
GAUL Button Valid HTML 4.01!

© 2004, "Stewart Adcock" <stewart@linux-domain.com> All rights reserved.
All trademarks on this page are probably owned by their respective companies. You can insert you own favourite disclaimer here.