Skip to content

Typing infrastructure improvements #143

Closed
@PokhodenkoSA

Description

@PokhodenkoSA

The basic goals are:

  1. Add support for all SYCL types that can be passed as kernel arguments (skip buffers/accessors for now):
  1. Reduce the multiple places where we have checks to identify the kernel argument type:

Tasks:

Design requirements:

  1. Create a typing library inside dpctl similar to сtypes._SimpleCData or even deriving from it to have wrappers for all SYCL types including reduced precision.
  2. Add new types to Numba as needed (e.g. for reduced precision types and short vector).
  3. Have Numba-dppy specific type inference so that we can infer types as dpctl types.
  4. Pass dpctl types to backend C API and do the type casting only once there.

Links:

  1. SYCL 2020 Provisional Specification
  2. https://github.com/IntelPython/dpctl/projects/1 - board

Problems:

  1. How to support vector types? How to define vector types in Python? Vector - fixed size array.
  2. DPC++ LLVM IR - For kernel getting vector. Is it possible to generate the same IR for vectors?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions