aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ggml.c4
-rw-r--r--llama-util.h40
-rw-r--r--llama.cpp7
3 files changed, 26 insertions, 25 deletions
diff --git a/ggml.c b/ggml.c
index 101cb73..939ab4d 100644
--- a/ggml.c
+++ b/ggml.c
@@ -512,7 +512,7 @@ static inline int hsum_i32_4(const __m128i a) {
return _mm_cvtsi128_si32(_mm_add_epi32(sum64, hi32));
}
-#if __AVX2__ || __AVX512F__
+#if defined(__AVX2__) || defined(__AVX512F__)
// spread 32 bits to 32 bytes { 0x00, 0xFF }
static inline __m256i bytes_from_bits_32(const uint8_t * x) {
uint32_t x32;
@@ -688,7 +688,7 @@ static inline float hsum_float_4x4(const __m128 a, const __m128 b, const __m128
#endif // __AVX__ || __AVX2__ || __AVX512F__
#endif // defined(__AVX__) || defined(__AVX2__) || defined(__AVX512F__) || defined(__SSSE3__)
-#if __ARM_NEON
+#if defined(__ARM_NEON)
#if !defined(__aarch64__)
diff --git a/llama-util.h b/llama-util.h
index 88ec28d..a79c5da 100644
--- a/llama-util.h
+++ b/llama-util.h
@@ -101,12 +101,12 @@ struct llama_file {
LLAMA_ASSERT(ret == 0); // same
}
- void read_raw(void * ptr, size_t size) {
- if (size == 0) {
+ void read_raw(void * ptr, size_t len) const {
+ if (len == 0) {
return;
}
errno = 0;
- std::size_t ret = std::fread(ptr, size, 1, fp);
+ std::size_t ret = std::fread(ptr, len, 1, fp);
if (ferror(fp)) {
throw std::runtime_error(format("read error: %s", strerror(errno)));
}
@@ -127,12 +127,12 @@ struct llama_file {
return std::string(chars.data(), len);
}
- void write_raw(const void * ptr, size_t size) {
- if (size == 0) {
+ void write_raw(const void * ptr, size_t len) const {
+ if (len == 0) {
return;
}
errno = 0;
- size_t ret = std::fwrite(ptr, size, 1, fp);
+ size_t ret = std::fwrite(ptr, len, 1, fp);
if (ret != 1) {
throw std::runtime_error(format("write error: %s", strerror(errno)));
}
@@ -267,9 +267,9 @@ struct llama_mlock {
}
}
- void init(void * addr) {
- LLAMA_ASSERT(this->addr == NULL && this->size == 0);
- this->addr = addr;
+ void init(void * ptr) {
+ LLAMA_ASSERT(addr == NULL && size == 0);
+ addr = ptr;
}
void grow_to(size_t target_size) {
@@ -340,14 +340,14 @@ struct llama_mlock {
return (size_t) si.dwPageSize;
}
- bool raw_lock(void * addr, size_t size) {
+ bool raw_lock(void * ptr, size_t len) {
for (int tries = 1; ; tries++) {
- if (VirtualLock(addr, size)) {
+ if (VirtualLock(ptr, len)) {
return true;
}
if (tries == 2) {
fprintf(stderr, "warning: failed to VirtualLock %zu-byte buffer (after previously locking %zu bytes): %s\n",
- size, this->size, llama_format_win_err(GetLastError()).c_str());
+ len, size, llama_format_win_err(GetLastError()).c_str());
return false;
}
@@ -363,7 +363,7 @@ struct llama_mlock {
// is equal to the number of pages in its minimum working set minus
// a small overhead."
// Hopefully a megabyte is enough overhead:
- size_t increment = size + 1048576;
+ size_t increment = len + 1048576;
// The minimum must be <= the maximum, so we need to increase both:
min_ws_size += increment;
max_ws_size += increment;
@@ -375,8 +375,8 @@ struct llama_mlock {
}
}
- void raw_unlock(void * addr, size_t size) {
- if (!VirtualUnlock(addr, size)) {
+ void raw_unlock(void * ptr, size_t len) {
+ if (!VirtualUnlock(ptr, len)) {
fprintf(stderr, "warning: failed to VirtualUnlock buffer: %s\n",
llama_format_win_err(GetLastError()).c_str());
}
@@ -388,12 +388,12 @@ struct llama_mlock {
return (size_t) 65536;
}
- bool raw_lock(const void * addr, size_t size) {
+ bool raw_lock(const void * addr, size_t len) {
fprintf(stderr, "warning: mlock not supported on this system\n");
return false;
}
- void raw_unlock(const void * addr, size_t size) {}
+ void raw_unlock(const void * addr, size_t len) {}
#endif
};
@@ -404,10 +404,10 @@ struct llama_buffer {
llama_buffer() = default;
- void resize(size_t size) {
+ void resize(size_t len) {
delete[] addr;
- addr = new uint8_t[size];
- this->size = size;
+ addr = new uint8_t[len];
+ size = len;
}
~llama_buffer() {
diff --git a/llama.cpp b/llama.cpp
index 68e3bec..dd44959 100644
--- a/llama.cpp
+++ b/llama.cpp
@@ -45,6 +45,7 @@ enum e_model {
MODEL_65B,
};
+
static const size_t MB = 1024*1024;
// computed for n_ctx == 2048
@@ -110,7 +111,7 @@ struct llama_hparams {
enum llama_ftype ftype = LLAMA_FTYPE_MOSTLY_F16;
bool operator!=(const llama_hparams & other) const {
- return memcmp(this, &other, sizeof(llama_hparams));
+ return static_cast<bool>(memcmp(this, &other, sizeof(llama_hparams)));
}
};
@@ -502,7 +503,7 @@ struct llama_file_loader {
if (file_version >= LLAMA_FILE_VERSION_GGJT_V1) {
// skip to the next multiple of 32 bytes
- file.seek(-file.tell() & 31, SEEK_CUR);
+ file.seek(-static_cast<ptrdiff_t>(file.tell()) & 31, SEEK_CUR);
}
shard.file_idx = file_idx;
shard.file_off = file.tell();
@@ -577,7 +578,7 @@ struct llama_file_saver {
file.write_u32(new_type);
file.write_raw(tensor.ne.data(), sizeof(tensor.ne[0]) * tensor.ne.size());
file.write_raw(tensor.name.data(), tensor.name.size());
- file.seek(-file.tell() & 31, SEEK_CUR);
+ file.seek(-static_cast<ptrdiff_t>(file.tell()) & 31, SEEK_CUR);
LLAMA_ASSERT(new_size == llama_calc_tensor_size(tensor.ne, new_type));
file.write_raw(new_data, new_size);
}