Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue: Add WebAssembly Support for Numerical C++ Code in Bokeh #357

Open
miranov25 opened this issue Jun 8, 2024 · 1 comment
Open

Issue: Add WebAssembly Support for Numerical C++ Code in Bokeh #357

miranov25 opened this issue Jun 8, 2024 · 1 comment

Comments

@miranov25
Copy link
Owner

Issue: Add WebAssembly Support for Numerical C++ Code in Bokeh

Objective:

Implement a library of numerical functions using WebAssembly (WASM) to be integrated into the Bokeh client side. Additionally, ensure the functionality is testable using Node.js.

Description:

We aim to enhance the Bokeh client-side capabilities by adding a library of numerical functions written in C++ and compiled to WebAssembly (WASM). This will allow us to leverage the performance benefits of WebAssembly for computationally intensive tasks directly within the browser. The new functionality will be added under Tools/WASM.

Tasks:

  1. Setup WebAssembly Environment:

    • Configure the build environment for compiling C++ code to WebAssembly.
    • Ensure compatibility with both the Bokeh client and Node.js for unit testing.
  2. Develop Numerical Functions:

    • Implement a library of numerical functions in C++ (e.g., optimization algorithms, matrix operations, statistical computations).
    • Compile these functions to WebAssembly.
  3. Integrate with Bokeh:

    • Create a JavaScript interface to load and call the WebAssembly functions from Bokeh.
    • Ensure seamless interaction between the Bokeh client and the WebAssembly module.
  4. Unit Testing with Node.js:

    • Set up a Node.js environment for running unit tests on the WebAssembly functions.
    • Develop comprehensive unit tests to verify the correctness and performance of the numerical functions.
  5. Documentation:

    • Provide detailed documentation on how to use the new WebAssembly numerical functions in Bokeh.
    • Include examples and use cases.

Acceptance Criteria:

  • The numerical functions library is successfully implemented in C++ and compiled to WebAssembly.
  • The WebAssembly functions can be called from the Bokeh client side.
  • Comprehensive unit tests are implemented and passing in a Node.js environment.
  • Detailed documentation and examples are provided.
@miranov25
Copy link
Owner Author

The code is related to the https://its.cern.ch/jira/browse/O2-5078
Prototype to be doe withing the associated gitlab project

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant