Forum Discussion

tde_m's avatar
tde_m
Icon for Occasional Contributor rankOccasional Contributor
5 years ago

Wall Clock Time on Device

Hello,

is there a way in Intel FPGA OpenCL to get the wall clock time (in clock cycles) directly on the device?

This could be useful, for example, to profile the occurrence of certain events.

Thanks

7 Replies

  • AnilErinch_A_Intel's avatar
    AnilErinch_A_Intel
    Icon for Frequent Contributor rankFrequent Contributor

    Hi Tiziano,

    There is no support to have a clock counter on device which will read the real time information ,other than the methods suggested so far. If any such support comes in future , I will keep you updated.

    Thanks and Regards

    Anil


    • tde_m's avatar
      tde_m
      Icon for Occasional Contributor rankOccasional Contributor

      Hi Anil,

      thanks for your reply.
      As far as I know, OpenCL profiling events can be used to get timings at the "kernel level" (e.g. the entire kernel execution time).

      Instead, I was wondering if there is a way directly on device to get timing information (e.g. the number of clock cycles that passes between two events).

      Thanks

  • AnilErinch_A_Intel's avatar
    AnilErinch_A_Intel
    Icon for Frequent Contributor rankFrequent Contributor

    Hi ,

    You have two other options also to measure the time.

    Method1:


    cl_int status;

    cl_ulong start, end, elapsed_time;

    cl::Event myevent();

    cl::CommandQueue myqueue(context, device, CL_QUEUE_PROFILING_ENABLE, &status);

    myqueue.enqueue…(…, &myevent);

    status = myevent.getProfilingInfo(CL_PROFILING_COMMAND_START, &start);

    status = myevent.getProfilingInfo(CL_PROFILING_COMMAND_END, &end, NULL);

    elapsed_time = end - start;//Time it took for the task to run in nanoseconds

    Method2:

    You can also use the dynamic profiler described here on this YouTube video. https://youtu.be/nyivIknJaV8?t=2437


    Thanks and Regards

    Anil


    • tde_m's avatar
      tde_m
      Icon for Occasional Contributor rankOccasional Contributor

      Hi Anil,

      yes, I was aware of these solutions.

      But none of them allow me what I wanted (measure time directly on device).

      Should I assume that there is no way of obtaining the wall clock time / a clock cycle counter directly on the device?

      Thanks