lightseekorg--tokenspeed
59a0a3844c
PR Test AMD / cancel-on-close (push) Has been skipped
PR Test NVIDIA ARM / scan (push) Has been skipped
PR Test NVIDIA / cancel-on-close (push) Has been skipped
PR Test AMD / scan (push) Has been skipped
PR Test NVIDIA ARM / cancel-on-close (push) Has been skipped
PR Test NVIDIA / scan (push) Has been skipped
Release Docker Images / build (cu129-torch-2.11.0) (push) Has been skipped
Release Docker Images / build (cu130-torch-2.11.0) (push) Has been skipped
Release PyPI / publish (push) Has been skipped
Scheduler Python Test / test (push) Successful in 27m19s
Docs / build (push) Successful in 28m8s
Scheduler C++ Test / test (push) Successful in 28m19s
Scheduler C++ Test / test-flat (push) Successful in 28m18s
Docs / deploy (push) Has been cancelled
PR Test AMD / finish (push) Has been cancelled
PR Test NVIDIA / finish (push) Has been cancelled
PR Test NVIDIA ARM / finish (push) Has been cancelled
PR Test NVIDIA ARM / ${{ matrix.name }} (${{ matrix.runner }}) (push) Has been cancelled
PR Test AMD / ${{ matrix.name }} (${{ matrix.runner }}) (push) Has been cancelled
PR Test NVIDIA / ${{ matrix.name }} (${{ matrix.runner }}) (push) Has been cancelled
48 行
1.8 KiB
C++
48 行
1.8 KiB
C++
#include <gtest/gtest.h>
|
|
|
|
#include "scheduler/operations/cache.h"
|
|
|
|
namespace tokenspeed::test {
|
|
|
|
TEST(CacheOperationKindTest, FlatWriteBackBucketsTransfersByKind) {
|
|
WriteBackOperation op;
|
|
op.op_id = 7;
|
|
op.transfers = {
|
|
TransferPair{CacheKind::kKV, 1, 11},
|
|
TransferPair{CacheKind::kMamba, 2, 22},
|
|
TransferPair{CacheKind::kKV, 1, 11},
|
|
TransferPair{CacheKind::kMamba, 3, 23},
|
|
};
|
|
|
|
FlatWriteBackOperation flat({op});
|
|
|
|
ASSERT_EQ(flat.op_ids, std::vector<cache_op_id>({7}));
|
|
EXPECT_EQ(flat.src_pages[0], std::vector<std::int32_t>({1}));
|
|
EXPECT_EQ(flat.dst_pages[0], std::vector<std::int32_t>({11}));
|
|
EXPECT_EQ(flat.src_pages_by_kind.at("kv")[0], std::vector<std::int32_t>({1}));
|
|
EXPECT_EQ(flat.dst_pages_by_kind.at("kv")[0], std::vector<std::int32_t>({11}));
|
|
EXPECT_EQ(flat.src_pages_by_kind.at("mamba")[0], std::vector<std::int32_t>({2, 3}));
|
|
EXPECT_EQ(flat.dst_pages_by_kind.at("mamba")[0], std::vector<std::int32_t>({22, 23}));
|
|
}
|
|
|
|
TEST(CacheOperationKindTest, FlatLoadBackBucketsTransfersByKind) {
|
|
LoadBackOperation op;
|
|
op.op_id = 9;
|
|
op.transfers = {
|
|
TransferPair{CacheKind::kKV, 10, 20},
|
|
TransferPair{CacheKind::kMamba, 30, 40},
|
|
};
|
|
|
|
FlatLoadBackOperation flat({op});
|
|
|
|
ASSERT_EQ(flat.op_ids, std::vector<cache_op_id>({9}));
|
|
EXPECT_EQ(flat.src_pages[0], std::vector<std::int32_t>({10}));
|
|
EXPECT_EQ(flat.dst_pages[0], std::vector<std::int32_t>({20}));
|
|
EXPECT_EQ(flat.src_pages_by_kind.at("kv")[0], std::vector<std::int32_t>({10}));
|
|
EXPECT_EQ(flat.dst_pages_by_kind.at("kv")[0], std::vector<std::int32_t>({20}));
|
|
EXPECT_EQ(flat.src_pages_by_kind.at("mamba")[0], std::vector<std::int32_t>({30}));
|
|
EXPECT_EQ(flat.dst_pages_by_kind.at("mamba")[0], std::vector<std::int32_t>({40}));
|
|
}
|
|
|
|
} // namespace tokenspeed::test
|