Skip to content

Add support for loading native code: Rust, C++Β #55

@mandar2812

Description

@mandar2812

This issue/task is quite large in terms of scope and implications. One can consider several capabilities that can be seen as objectives which the native interface/connection will need to achieve

Objectives

  1. Optimising kernel computations; more specifically of classes implementing LocalScalarKernel[I]. This should ideally be done at the level of the evaluate(x: I, y: I) function of the common kernel implementations like RBFKernel, FBMKernel, PolynomialKernel and others.

  2. Implementing models in native code and connecting them to the DynaML Model[T, Q, R] trait.

Languages

In order of preference.

  1. Rust
  2. C++

Compatibility Layers

A number of java compatibility interfaces can be considered and with some deliberation one of them can be finalised.

  1. JNI: Java Native Interface
  2. JNA: Java Native Access, with [BridJ] backend
  3. FFI: Java Abstracted Foreign Function Layer

Resources

  1. Java-Rust-FFI
  2. Java-Rust-Example

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions