Optimization
Functions
bijective_function(Function f)->Boolean
Is function f
bijective?
code_trail(Charstring fn)->Vector
code_trail(Function fno)->Vector
costhint(Function f,Charstring bpat,Object q)->Function
costhint(Charstring fn,Charstring bpat,Object h)->Function
Define cost model for function named fn
and binding pattern bpat
.
If h
is a vector [c,f]
it defines a constant cost c
and fanout f
.
If h
is a function it computes the cost and fanout
costhints(Function fn)->Bag of (Charstring,Object)
Get all cost models for binding patterns of function fn
export_plan(Charstring fn,Charstring file)->Bag of Function
Write execution plans of resolvents of f
into file
fully_autocompiled(Charstring fn)->Boolean
If 'fn' fully compiled to SLAP with enabled compiler?
fully_compiled(Charstring fn)->Boolean
Is fn
fully compiled into SLAP?
optmethod(Charstring m)->Charstring r
Choose query optimization method m
for optimizing queries:
exhaustive: dynamic programming
ranksort: greedy ranking
randomopt: randomized optimization
parteval(Charstring fn)->Bag of Function
Declare resolvents of function named fn
to be partially evaluated
plan_cost(Charstring fn)->Bag of (Real,Real)
The estimated cost of executing resolvents of function named fn
plan_cost(Function f)->Bag of (Real,Real)
The estimated cost of executing resolvents of function f
plan_cost(Charstring fn,Charstring bpat)->(Real,Real)
The estimated cost of executing function named fn
for binding pattern bpat
plan_trail(Charstring fn)->Vector
plan_trail(Function fno)->Vector
recompile(Charstring fn)->Bag of Function
Recompile function named fn
recompile(Function f)->Bag of Function
Recompile resolvents of function f
reoptimize(Charstring fn)->Bag of Function
Reoptimize execution plan of function named fn
,
including all subqueries
reoptimize(Function f)->Bag of Function
Reoptimize execution plan of function f
, including all subqueries
uncache_costs()->Integer
Uncache costs of all functions
unparteval(Charstring fn)->Bag of Function
Make resolvents of function named fn
not be partially evaluated