Inital commit

This commit is contained in:
2026-07-29 01:00:10 -05:00
commit 23e8ea90e4
3301 changed files with 1376308 additions and 0 deletions
+49
View File
@@ -0,0 +1,49 @@
#pragma once
#include "llama-mmap.h"
#include "llama-model-loader.h"
#include <cstdint>
#include <memory>
#include <mutex>
#include <vector>
struct llama_longhaul_cache {
llama_longhaul_cache(
llama_files files,
std::vector<llama_model_loader::longhaul_source> sources,
size_t n_slots,
uint32_t n_experts,
uint32_t n_layers);
~llama_longhaul_cache();
bool remap(int layer, ggml_tensor * ids);
void release(int layer);
uint32_t max_ubatch(uint32_t n_expert_used) const;
const std::string & error() const;
bool failed() const;
private:
struct layer_state {
std::vector<int32_t> expert_ids;
std::vector<uint64_t> last_used;
};
llama_files files;
std::vector<llama_model_loader::longhaul_source> sources;
std::vector<layer_state> layers;
size_t n_slots;
uint32_t n_experts;
uint64_t tick = 0;
uint64_t n_hits = 0;
uint64_t n_misses = 0;
uint64_t bytes_read = 0;
std::mutex mutex;
bool locked = false;
int locked_layer = -1;
std::string last_error;
int find_slot(int layer, int32_t expert_id);
bool load_slot(int layer, int slot, int32_t expert_id);
};