ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login
    1. Home
    2. eric
    3. Posts
    E
    • Profile
    • Following 0
    • Followers 0
    • Topics 5
    • Posts 25
    • Best 1
    • Controversial 0
    • Groups 0

    Posts made by eric

    • RE: Voxl2 Docker (Ubuntu 22) with OpenCL/Adreno

      @Alex-Kushleyev Awesome! Thanks again for all your help with this!

      posted in Ask your questions right here!
      E
      eric
    • RE: Voxl2 Docker (Ubuntu 22) with OpenCL/Adreno

      @Alex-Kushleyev Yes, dpkg -S <file path> to figure out which debs installed which libraries (ie, dpkg -S /usr/lib/libOpenCL.so), apt-cache show to see the source (ubuntu ppa vs modalai), then dpkg-repack to repack the modalai debs.

      Thanks again!

      posted in Ask your questions right here!
      E
      eric
    • RE: Voxl2 Docker (Ubuntu 22) with OpenCL/Adreno

      @Alex-Kushleyev

      OMG IT WORKS!!

      I was able to extract all these libraries from the host and directly install them inside the docker, and now the pcol-opencl-icd installation isn't needed.

      This is really important for us, since it allows us to build external dependencies that rely on OpenCL in our pipeline directly without bind mounts (outside the host environment).

      Really, really appreciate all your help!

      FROM arm64v8/ubuntu:22.04
      
      # Install necessary dependencies
      RUN apt-get update && \
          apt-get install -y \
          cmake \
          build-essential \
          libglib2.0-0
      
      # Copy Adreno GPU dependencies
      # - libcutils0_0-r1_arm64.deb
      # - libsync_1.0-r1_arm64.deb
      # - qti-libion_0-r1_arm64.deb
      # - liblog0_1.0-r1_arm64.deb
      # - qti-adreno_1.0-r0_arm64.deb
      COPY dep /root/dep
      
      # Create required directory for qti-adreno install
      RUN mkdir /usr/include/KHR && dpkg -i /root/dep/*.deb 
      
      # Copy and build test script
      COPY ./hellocl /root/hellocl
      RUN cd /root/hellocl && mkdir build && cd build && cmake .. && make
      
      CMD ["bash"]
      
      voxl2:~/opencl$ docker run -it --rm --privileged opencl:latest ./root/hellocl/build/hellocl
      Platform Information:
      Platform Name: QUALCOMM Snapdragon(TM)
      Platform Vendor: QUALCOMM
      Platform Version: OpenCL 2.0 QUALCOMM build: commit # changeid # Date: 11/10/21 Wed Local Branch:  Remote Branch: 
      Platform Profile: FULL_PROFILE
      Platform Extensions:  
      ------------------------------------
      Device Information:
      Device Name: QUALCOMM Adreno(TM)
      Device Vendor: QUALCOMM
      Driver Version: OpenCL 2.0 QUALCOMM build: commit # changeid # Date: 11/10/21 Wed Local Branch:  Remote Branch:  Compiler E031.37.12.01
      Device Version: OpenCL 2.0 Adreno(TM) 650
      Device OpenCL C Version: OpenCL C 2.0 Adreno(TM) 650
      Device Max Compute Units: 3
      This should be three: 3
      
      posted in Ask your questions right here!
      E
      eric
    • RE: Voxl2 Docker (Ubuntu 22) with OpenCL/Adreno

      @Alex-Kushleyev 🙇

      posted in Ask your questions right here!
      E
      eric
    • RE: Voxl2 Docker (Ubuntu 22) with OpenCL/Adreno

      @Alex-Kushleyev That aligns pretty well with my own experience so far. Thanks again for looking into this!

      posted in Ask your questions right here!
      E
      eric
    • RE: Voxl2 Docker (Ubuntu 22) with OpenCL/Adreno

      @Eric-Katzfey Really appreciate it! Thanks so much

      posted in Ask your questions right here!
      E
      eric
    • RE: Voxl2 Docker (Ubuntu 22) with OpenCL/Adreno

      @Eric-Katzfey I know it's been a few years, but I see your name all over the voxl-docker-opencl commit history was wondering if you'd be able to share your thoughts regarding how I might approach this? Specifically, if there are any steps you'd recommend I take to get OpenCL integrated into docker for Voxl2.

      Thanks,
      Eric

      posted in Ask your questions right here!
      E
      eric
    • RE: Voxl2 Docker (Ubuntu 22) with OpenCL/Adreno

      For reference, I've tried downloading the adreno-opencl-sdk-2.0 from qualcomm, loaded the libraries into the docker, and run privileged while also adding devices /dev/dri and /dev/kgsl-3d0. I also added a vendor including the path to qualcomm's libOpenCL library. When I query platforms using the C++ api, the script just hangs. If I don't set the vendor, it fails with a -1001 error.

      Inside the docker, I can build all the sdk examples just fine. I just can't access Adreno.

      Thanks again for any help.

      posted in Ask your questions right here!
      E
      eric
    • Voxl2 Docker (Ubuntu 22) with OpenCL/Adreno

      Hello, we have a ROS2 humble autonomy stack that we we build in a CI pipeline and deploy to various platforms, including Voxl2.

      The pipeline selects an appropriate base image for respective platforms (including nvida jetson, voxl, etc), each of which is a custom docker image based on ubuntu:jammy with unique layers for platform dependencies.

      We would like to be able to utilize the Adreno GPU within our voxl2 target via OpenCL. I could use some assistance understanding how I might go about this for VOXL2. I am aware of this VOXL1 example: https://gitlab.com/voxl-public/voxl-docker-images/voxl-docker-opencl. Unfortunately, this example uses a prebuilt package for OpenCL to provide Adreno support.

      Is there any documentation that could be shared regarding how this Adreno OpenCL library was built so that we can build an equivalent library in Ubuntu 22 that supports Adreno/VOXL2?

      Any guidance would be greatly appreciated.

      Thank you,
      Eric

      posted in Ask your questions right here!
      E
      eric
    • RE: voxl-dfs-server: stereo pointcloud coordinate frame

      I am seeing a very strong correlation between projected pointcloud and the front left image, but it's not perfect (bottom edge seems a bit off), so my guess is that the pointcloud coordinate frame is aligned with the left camera after slight rotation (for rectification):

      42715ed9-e314-4d3b-bb4e-17b1c43c82d3-image.png

      If so, how to extract this rotation and correct the transform?

      posted in Ask your questions right here!
      E
      eric
    • voxl-dfs-server: stereo pointcloud coordinate frame

      Very quick question. I'm working on an application where I need to project the stereo_front_pc (from voxl-dfs-server) into the hires camera frame. This of course requires that I know the coordinate frame of the generated pointcloud. Since the underlying rectification process is closed source, I can't see any transformations involved in the rectification, just the resulting maps.

      Is the coordinate frame associated with left camera, rectified left camera (in which case, how do I lookup R), or something else?

      Tagging @James-Strawson and @thomas, since they are the authors of this package.

      Thanks!

      posted in Ask your questions right here!
      E
      eric
    • Are SELECT_TF_OPS supported on VOXL2?

      I'm converting a custom keras model to tflite. Unfortunately, this model requires GatherND, which is not included in the built-in TF lite OPS.

      If I add SELECT_TF_OPS to the supported ops list, then my custom TFlite model builds locally:

      converter.target_spec.supported_ops = [
          tf.lite.OpsSet.TFLITE_BUILTINS,
          tf.lite.OpsSet.SELECT_TF_OPS
      ]
      

      Will this model (with the SELECT_TF_OPS flag) work with tflite server for VOXL2, or can I only use the built-in tflite ops?

      posted in Ask your questions right here! tflite tflite-server voxl2
      E
      eric
    • RE: voxl MPA-TO_ROS2

      @Zachary-Lowell-0 I am getting a 404 from gitlab saying I don't have permission to view it. This is the link I'm trying to access: https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-mpa-to-ros2.git

      posted in ROS
      E
      eric
    • RE: voxl MPA-TO_ROS2

      @Zachary-Lowell-0 Sweet! Thanks Zach. I currently have ROS2 humble installed on my VOXL 2 flightdeck. Excited to try this out!

      Can you tag me when this repository is public?

      posted in ROS
      E
      eric
    • RE: voxl MPA-TO_ROS2

      Any possibility of opening this up to the public before the release?

      https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-mpa-to-ros2.git

      posted in ROS
      E
      eric
    • RE: voxl MPA-TO_ROS2

      @jacob-yaacubov Not sure why you didn't get a response from the moderation team?

      It does like it's coming in SDK 1.1: https://docs.modalai.com/ros2-installation-voxl2/#mpa-to-ros2

      I would also appreciate a roadmap or timeline. I am about to port it to ROS2 myself, and would prefer to save the hassle if it's just around the corner.

      posted in ROS
      E
      eric
    • RE: RB5 System Clock Issues

      FWIW, we are not seeing this issue on the VOXL2 flightdeck (which does not use voxl-px4-imu-server)

      @Moderator Is there someone else I should tag for this issue if you are unable to provide support?

      posted in Qualcomm Flight RB5 5G Drone
      E
      eric
    • RE: RB5 System Clock Issues

      @Moderator, we've observed that when we kill voxl-px4-imu-server, the timing discrepancy disappears. We of course need this to be running to get IMU data, but this process at least seems to be related to the issue.

      posted in Qualcomm Flight RB5 5G Drone
      E
      eric
    • RE: RB5 System Clock Issues

      @Moderator, has anyone been able to replicate this issue? Is this there a known solution to this?

      posted in Qualcomm Flight RB5 5G Drone
      E
      eric
    • RE: ROS IMU timing quality issues on RB5

      @Moderator Unfortunately, there is not a way to configure ROS1 to use steady_clock instead of system_clock. In ROS2, it seems that this is configurable, but ModalAI does not support ROS2.

      posted in Qualcomm Flight RB5 5G Drone
      E
      eric