GCC Code Coverage Report


Directory: src/
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
Coverage Exec / Excl / Total
Lines: 100.0% 3 / 0 / 3
Functions: 100.0% 2 / 0 / 2
Branches: -% 0 / 0 / 0

ps/base/parameters.h
Line Branch Exec Source
1 #pragma once
2 #include "base/flatc.h"
3
4 #pragma pack(push, 1)
5 struct ParameterCompressItem {
6 uint64_t key;
7 int dim;
8
9 static int GetSize(int dim) {
10 return sizeof(ParameterCompressItem) + dim * sizeof(float);
11 }
12 2 const float* data() const { return embedding; }
13
14 int byte_size() const {
15 return sizeof(ParameterCompressItem) + dim * sizeof(float);
16 }
17 float embedding[0]; // this must be the tail
18 };
19 #pragma pack(pop)
20
21 template <>
22 struct Pack<ParameterCompressItem> {
23 static constexpr const bool implemented = true;
24 uint64_t key = 0;
25 int dim = 0;
26 const float* emb_data = nullptr;
27 Pack<ParameterCompressItem>() = default;
28 20 Pack<ParameterCompressItem>(uint64_t key, int dim, const float* emb_data)
29 20 : key(key), dim(dim), emb_data(emb_data) {}
30 void CompressAppend(std::string* output) const;
31 };
32
33 using ParameterPack = Pack<ParameterCompressItem>;
34 using ParameterCompressor = FlatItemCompressor<ParameterCompressItem>;
35 using ParameterCompressReader = FlatItemCompressReader<ParameterCompressItem>;
36