Skip to content

Commit

Permalink
cleaning(simple-kernel-timer): promote find_index to kp_shared.hpp
Browse files Browse the repository at this point in the history
  • Loading branch information
romintomasetti committed Dec 27, 2023
1 parent 872352d commit 3ece467
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 33 deletions.
13 changes: 0 additions & 13 deletions profiling/simple-kernel-timer/kp_json_writer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -54,19 +54,6 @@ inline void write_json(std::ostream& os, KernelPerformanceInfo const& kp,
os << indent << '}';
}

int find_index(std::vector<KernelPerformanceInfo*>& kernels,
const char* kernelName) {
for (unsigned int i = 0; i < kernels.size(); i++) {
KernelPerformanceInfo* nextKernel = kernels[i];

if (strcmp(nextKernel->getName(), kernelName) == 0) {
return i;
}
}

return -1;
}

int main(int argc, char* argv[]) {
if (argc == 1) {
fprintf(stderr, "Did you specify any data files on the command line!\n");
Expand Down
11 changes: 4 additions & 7 deletions profiling/simple-kernel-timer/kp_kernel_info.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,9 +65,6 @@ class KernelPerformanceInfo {
: kType(kernelType) {
kernelName = (char*)malloc(sizeof(char) * (kName.size() + 1));
strcpy(kernelName, kName.c_str());

callCount = 0;
time = 0;
}

~KernelPerformanceInfo() { free(kernelName); }
Expand Down Expand Up @@ -218,10 +215,10 @@ class KernelPerformanceInfo {

char* kernelName;
// const char* regionName;
uint64_t callCount;
double time;
double timeSq;
double startTime;
uint64_t callCount = 0;
double time = 0;
double timeSq = 0;
double startTime = 0;
KernelExecutionType kType;
};

Expand Down
13 changes: 0 additions & 13 deletions profiling/simple-kernel-timer/kp_reader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,6 @@

using namespace KokkosTools::KernelTimer;

int find_index(std::vector<KernelPerformanceInfo*>& kernels,
const char* kernelName) {
for (unsigned int i = 0; i < kernels.size(); i++) {
KernelPerformanceInfo* nextKernel = kernels[i];

if (strcmp(nextKernel->getName(), kernelName) == 0) {
return i;
}
}

return -1;
}

int main(int argc, char* argv[]) {
if (argc == 1) {
fprintf(stderr, "Did you specify any data files on the command line!\n");
Expand Down
11 changes: 11 additions & 0 deletions profiling/simple-kernel-timer/kp_shared.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,11 @@
#ifndef _H_KOKKOSP_KERNEL_SHARED
#define _H_KOKKOSP_KERNEL_SHARED

#include <algorithm>
#include <map>
#include <memory>
#include <vector>

#include "kp_kernel_info.h"

namespace KokkosTools::KernelTimer {
Expand All @@ -39,6 +42,14 @@ inline bool compareKernelPerformanceInfo(KernelPerformanceInfo* left,
return left->getTime() > right->getTime();
};

inline int find_index(std::vector<KernelPerformanceInfo*>& kernels,
const char* kernelName) {
const auto it = std::find_if(
kernels.begin(), kernels.end(),
[&](const auto& kernel) { return strcmp(kernel->getName(), kernelName) == 0; });
return it == kernels.cend() ? -1 : std::distance(kernels.begin(), it);
}

} // namespace KokkosTools::KernelTimer

#endif // _H_KOKKOSP_KERNEL_SHARED

0 comments on commit 3ece467

Please sign in to comment.