This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Arm Streamline OpenCL Mode not Work for Mali Immortalis-G720

I am trying to profile one debuggable app with Streamline tool, but I don't know how to configure OpenCL mode. My device is vivo Pad 3 pro, with GPU Mali Immortalis-G720.

In OpenCL-mode,  there are two limitations to use OpenCL mode:

  1. OpenCL mode is only available on platforms with an OpenCL timeline compiled into the Mali driver. In this page https://developer.arm.com/Tools%20and%20Software/Arm%20Development%20Studio#Supported-Devices, it lists Immortalis-G720, which is supported by Streamline OpenCL Timeline.
  2. The information in this topic applies to job manager GPUs up to version r42.When I check my GPU DDK version with 
    dumpsys | grep GLES
    , it prints that the GPU version is r44p1, I'm not sure if it means that OpenCL mode is not usable for me.

            

3. According to https://community.arm.com/support-forums/f/ai-and-ml-forum/52716/opencl-profiling-for-mali-gpu, I have tried to create config file and place it to the same directory as the application profiled,.But when I ran Streamline to profile the app, it didn't capture any data about OpenCL.

    

All I'd like to know is if OpenCL mode supports Immortalis-G720? If it does, how should I do? Btw, if ther is any other way to profile OpenCL kernel excuting on Mali GPU ?

Thanks a lot.

  • if ther is any other way to profile OpenCL kernel excuting on Mali GPU

    The only thing that you don't get if you are missing the traced data is the Mali scheduling timeline. All of the GPU performance counters measuring what the GPU is doing will work without this, and that is the most useful part for profiling. 

  • Thanks a lot for your response. Actually I found that I could get some data with Mali Timeline, although I don't know if it's complete.

    But what's more important to me is to display each command name like this. I have to figure out which OpenCL kernel was excuted at some point.

    And when I try to select counters, there are some warnings. I wonder if the warnings would effect the use of Mali Timeline or OpenCL mode.

    Best Regards,

    Jie Xiao.

  • Hello, my GPU is MALI-G71, and I am also trying to turn on opencl mode. How did you turn on and use opencl mode. I hope you can help me. At the same time, using the command "dumpsys | grep GLES" will not display GPU driver information. Do I need to install GPU drivers. How to obtain GPU drivers.

  • I'm sorry because I'm also confused about how to use OpenCL mode. The command  "dumpsys | grep GLES" is apply to mobile devices, I'm not sure if it work on others.

  • My device is Huawei Mate9. I saw your screenshot and it seems like you have opened OpenCL mode. Is it convenient for communication? I have QQ, WeChat, and email.

  • If you‘re referring to this, it's just from here Arm Streamline User Guide, not from my device.

    I am so sorry but arm community doesn't allow user to post their information, if you have any other questions, you can post here.

  • ok Thank you still. I still have no clue so far. I think the Android kernel needs to enable options such as debugging and printing. And GPU drivers need to be installed. But do not directly overwrite the GPU driver for mobile phones. Can it be turned on.

  • Just to be clear, there are two different methods:

    For older devices with the Job Manager (Mali-G78 and older) the "OpenCL Timeline" exists, and gives you kernel name. This requires some debug options to enable, and is really designed for device manufacturers with access to driver builds, it is not generally accessible on consumer handsets with release drivers. 

    For newer devices with the Command Stream Frontend (Mali-G710 onwards), the OpenCL Timeline mechanism no longer exists. The Mali timeline  that you found is the replacement for this, but workload boxes are currently anonymous without kernel name. We are looking at adding this back, but it's not available yet.

    Kind regards, 
    Pete

  • If you are willing to synchronously submit work on the CPU you can wrap submissions in Streamline annotations to add semantics such as kernel names, e.g. use a Custom Activity Map. 
  • Thank you for your reply.
    May I ask if the older device I want to open "OpenCL TimeLine" (Mali-G78 and older) is a development board similar to HiKey 960 Specifications. Or can you provide a development board model.
    Do you need to set some option switches for the development board kernel. And I have GPU drivers
    Find some models here. Regarding the application name, if my application name is "openclDemo", is the file name that needs to be created "openclDemo. mali config" or "openclDemo. config" or "mali_debug. config", where the content is

    MALI_TIMELINE_UDS_LOSSLESS_MODE=1
    MALI_TIMELINE_ROLES=cl
    GATOR_WITH_MALI_SUPPORT=MALI_MIDGARD
    CONFIG_MALI_GATOR_SUPPORT=y

    My final version of Steamline is DS5.29.