[Monetdb-developers] Building accelerators

Martin Kersten Martin.Kersten at cwi.nl
Tue Apr 10 22:56:27 CEST 2007


Although we originally provided hooks deep in the kernel to
enrich it with accelerators, experienced has shown over the years
that 1) it wasn't used often, 2) it creates a low-level maintenance
headache, and 3) complex datastructures and accelerators can often
be modelled using ordinary BAT as representations and judicious use
of the BAT operators.

For volatile structures, it sometimes pays to create an in-memory
structure yourself, enriched with operators of interest, and a scheme
to map them to BATs for persistency. This approach is a hybrid approach.

The new crackers and database partitioning modules follow this approach.
The choice for a C-data structure is often chosen when the programmer is
not trained to properly use the GDK (BAT) data structures directly.

The MonetDB 5 approach also brings program transformations into view
as a scheme to exploit. If you have runtime or application knowledge,
you may e.g. replace sequences produced by the SQL compiler with
cheaper ones. Or you might even produce plans that embody multiple
alternatives, which are chosen at runtime by an application specific
scheduler. The src/scheduler/mal_memo.mx illustrates how this might
work. (.../Tests/memo*.mal)

regards, Martin

Agustin Schapira wrote:
> Hi all,
> We have created a new Monet data type for one of our projects, and  
> now want to write a set of accelerators for it. Is there any good  
> documentation/examples on how to do that (for 4.16)?
> Thanks a lot,
> -- Agustin
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share your
> opinions on IT & business topics through brief surveys-and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Monetdb-developers mailing list
> Monetdb-developers at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/monetdb-developers

More information about the developers-list mailing list