Open jmftrindade opened 5 years ago
Hi, I face the same issue. Have you handled it successfully?
I think the error is fixed in "streaming" branch. I still not able to pinpoint in which commit the author has fixed this. Also, it seems "streaming" branch is ahead of 53 commits. So, use it with caution! :)
You can find the definition of "ll_level_within_bounds" in "streaming" branch.
File: /llama/include/llama/ll_utils.h
/**
* Check whether the given level number is within the bounds
*
* @param level the level
* @param min the min level (inclusive)
* @param max the max level (inclusive)
* @return true if it is within the given bounds
*/
inline bool ll_level_within_bounds(int level, int min, int max) {
if (min <= max)
return min <= level && level <= max;
else
return (min <= level || level <= max) && max >= 0;
}
Also check the missing definition of "_ll_atomic_compare_and_swap" function in the same file. Here I have added all the 7 overloaded functions here,
File: /llama/include/llama/ll_utils.h
static inline bool _ll_atomic_compare_and_swap(int *dest, int old_val,
int new_val) {
return __sync_bool_compare_and_swap(dest, old_val, new_val);
}
static inline bool _ll_atomic_compare_and_swap(long *dest, long old_val,
long new_val) {
return __sync_bool_compare_and_swap(dest, old_val, new_val);
}
static inline bool _ll_atomic_compare_and_swap(unsigned long *dest,
unsigned long old_val, unsigned long new_val) {
return __sync_bool_compare_and_swap(dest, old_val, new_val);
}
static inline bool _ll_atomic_compare_and_swap(long long* dest, long long old_val,
long long new_val) {
return __sync_bool_compare_and_swap(dest, old_val, new_val);
}
static inline bool _ll_atomic_compare_and_swap(unsigned long long *dest,
unsigned long long old_val, unsigned long long new_val) {
return __sync_bool_compare_and_swap(dest, old_val, new_val);
}
static inline bool _ll_atomic_compare_and_swap(float *dest, float old_val,
float new_val) {
return _ll_cas_asm(dest, old_val, new_val);
}
static inline bool _ll_atomic_compare_and_swap(double *dest, double old_val,
double new_val) {
return _ll_cas_asm(dest, old_val, new_val);
}
Hi there! Not sure if this project is still actively maintained, but heads up that benchmark-streaming build seems to be broken. This is on both clang++ v5.0 and g++ v5.4.0 and on both -std=gnu++11 and -std=c++14
Other benchmarks are not affected. Build error logs from gcc with -std=gnu++11: