9 #ifndef _HELPER_METHODS_H
10 #define _HELPER_METHODS_H
22 const std::string
trimSpaces(
const std::string& pString,
const std::string& pWhitespace =
" \t")
24 const size_t beginStr = pString.find_first_not_of(pWhitespace);
25 if (beginStr == std::string::npos)
31 const size_t endStr = pString.find_last_not_of(pWhitespace);
32 const size_t range = endStr - beginStr + 1;
34 return pString.substr(beginStr, range);
37 template <
class T>
const T& max (
const T& a,
const T& b ) {
48 return (T)( rand() % (int)(max-min+1) + min);
57 std::string content =
"";
58 std::ifstream ifs(filename.c_str());
61 content.assign( (std::istreambuf_iterator<char>(ifs)), (std::istreambuf_iterator<char>()) );
71 std::transform(str.begin(), str.end(),str.begin(), ::tolower);
79 std::transform(str.begin(), str.end(),str.begin(), ::toupper);
86 bool startsWith(
const std::string& main,
const std::string& prefix)
88 return (main.substr(0, prefix.size()) == prefix);
100 #if defined(SKEPU_CUDA) && defined(USE_PINNED_MEMORY)
102 DEBUG_TEXT_LEVEL1(
"Pinned memory allocation ******\n")
104 err = cudaHostAlloc((
void **)&p, n *
sizeof(T), cudaHostAllocPortable);
109 std::cerr<<
"*** Error Malloc: "<< cudaGetErrorString(err)<<
"\n";
110 throw std::bad_alloc();
118 std::cerr<<
"*** Error Malloc **************\n";
119 throw std::bad_alloc();
128 template <
typename T>
131 #if defined(SKEPU_CUDA) && defined(USE_PINNED_MEMORY)
134 err = cudaFreeHost(p);
137 std::cerr<<
"*** Error De-Alloc: "<< cudaGetErrorString(err) <<
"\n";
138 throw std::bad_alloc();
142 DEBUG_TEXT_LEVEL1(
"Pinned memory de-allocation Successful ******\n")
bool startsWith(const std::string &main, const std::string &prefix)
Definition: helper_methods.h:86
void toUpperCase(std::string &str)
Definition: helper_methods.h:77
void deallocateHostMemory(T *p)
Definition: helper_methods.h:129
const std::string trimSpaces(const std::string &pString, const std::string &pWhitespace=" \t")
Definition: helper_methods.h:22
T get_random_number(T min, T max)
Definition: helper_methods.h:46
T * allocateHostMemory(unsigned int n)
Definition: helper_methods.h:96
void toLowerCase(std::string &str)
Definition: helper_methods.h:69
std::string read_file_into_string(const std::string &filename)
Definition: helper_methods.h:55