Commit 1f1ae5bb authored by wangshaojie6's avatar wangshaojie6
Browse files

use hip launch ext

parent 12a64942
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
#include <chrono> #include <chrono>
#include <hip/hip_runtime.h> #include <hip/hip_runtime.h>
#include <hip/hip_fp16.h> #include <hip/hip_fp16.h>
#include <hip/hip_ext.h>
#include "stream_config.hpp" #include "stream_config.hpp"
#include "ck/options.hpp" #include "ck/options.hpp"
...@@ -97,17 +98,34 @@ float launch_and_time_kernel(const StreamConfig& stream_config, ...@@ -97,17 +98,34 @@ float launch_and_time_kernel(const StreamConfig& stream_config,
printf("Start running %d times...\n", nrepeat); printf("Start running %d times...\n", nrepeat);
KernelTimer timer; //KernelTimer timer;
timer.Start(); //timer.Start();
hipEvent_t start, stop;
hip_check_error(hipEventCreate(&start));
hip_check_error(hipEventCreate(&stop));
float total_time = 0.0f;
for(int i = 0; i < nrepeat; ++i) for(int i = 0; i < nrepeat; ++i)
{ {
kernel<<<grid_dim, block_dim, lds_byte, stream_config.stream_id_>>>(args...); hipExtLaunchKernelGGL(kernel, grid_dim, block_dim, 0, nullptr, start, stop, 0,
args...);
//kernel<<<grid_dim, block_dim, lds_byte, stream_config.stream_id_>>>(args...);
hip_check_error(hipEventSynchronize(stop));
float time = 0.0f;
hip_check_error(hipEventElapsedTime(&time, start, stop));
total_time += time;
} }
timer.End(); //timer.End();
return timer.GetElapsedTime() / nrepeat; //return timer.GetElapsedTime() / nrepeat;
return total_time/nrepeat;
} }
else else
{ {
......
...@@ -39,13 +39,13 @@ struct KernelTimerImpl ...@@ -39,13 +39,13 @@ struct KernelTimerImpl
void Start() void Start()
{ {
hip_check_error(hipDeviceSynchronize()); //hip_check_error(hipDeviceSynchronize());
hip_check_error(hipEventRecord(mStart, nullptr)); //hip_check_error(hipEventRecord(mStart, nullptr));
} }
void End() void End()
{ {
hip_check_error(hipEventRecord(mEnd, nullptr)); //hip_check_error(hipEventRecord(mEnd, nullptr));
hip_check_error(hipEventSynchronize(mEnd)); hip_check_error(hipEventSynchronize(mEnd));
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment