Skip to content

Treelite 0.30

Compare
Choose a tag to compare
@hcho3 hcho3 released this 24 Mar 06:00

Major re-factoring of the backend code

  • New code generator, based on Abstract Syntax Trees (AST)
    • Build AST first
    • Iteratively transform AST
    • Finally convert AST into C/JAVA program
  • Improved abstraction and modularity (no more spaghetti code!)
    • It's now much easier to "edit" tree prediction logic: you'd just need to operate on a tree graph. Re-factoring was a worthwhile investment for future research. For instance, we could create a new node type in AST representing an AVX operation. A group of conditional nodes can be converted into the AVX node with equivalent semantics.
  • Support for Java: see example at https://github.com/hcho3/treelite-java-example

BREAKING CHANGES

  • Prediction library generated by previous versions are NOT compatible with the current version. You will have to run export_lib() or compile() again.