Browse Source

update: cleanup debug output

master
Dnomd343 1 month ago
parent
commit
390b48f0eb
  1. 39
      src/core/benchmark/group.cc
  2. 4
      src/core/group/internal/group.cc
  3. 26
      src/core/main.cc

39
src/core/benchmark/group.cc

@ -22,6 +22,8 @@ using klotski::group::GroupUnion;
using klotski::codec::RawCode;
using klotski::codec::CommonCode;
using klotski::group::TYPE_ID_LIMIT;
/// Build all valid CommonCodes.
static std::vector<uint64_t> all_common_codes() {
std::vector<uint64_t> codes;
@ -114,13 +116,42 @@ static void GroupExtend(benchmark::State &state) {
// auto src = klotski::codec::RawCode::from_common_code(0x1A9BF0C00).value();
// const auto group = Group::unsafe_create(169, 0, Group::Toward::C);
// const auto group = Group::create(5, 0, Group::Toward::A).value();
const auto group = Group::create(186, 0, Group::Toward::A).value();
// constexpr auto group = Group::unsafe_create(169, 0, Group::Toward::C); // Horizontal (5.33ms)
// constexpr auto group = Group::unsafe_create(5, 0, Group::Toward::A); // Full (8.27ms)
// constexpr auto group = Group::create(182, 0, Group::Toward::A).value(); // Vertical
// const auto group = Group::create(186, 0, Group::Toward::A).value();
// std::cout << (int)group.mirror_type() << std::endl;
// std::vector<Group> groups;
// groups.reserve(25422);
// for (int type_id = 0; type_id < 203; ++type_id) {
// for (auto group : GroupUnion::unsafe_create(type_id).groups()) {
// groups.emplace_back(group);
// }
// }
for (auto _ : state) {
volatile auto tmp = group.cases();
for (int type_id = 0; type_id < TYPE_ID_LIMIT; ++type_id) {
for (auto group : GroupUnion::unsafe_create(type_id).groups()) {
// if (group.mirror_type() == Group::MirrorType::Full) {
// if (group.mirror_type() == Group::MirrorType::Horizontal) {
// if (group.mirror_type() == Group::MirrorType::Centro) {
// if (group.mirror_type() == Group::MirrorType::Vertical) {
if (group.mirror_type() == Group::MirrorType::Ordinary) {
// std::println("{} ({})", group.to_string(), group.size());
volatile auto kk = group.cases();
}
}
}
// for (auto group : groups) {
// volatile auto tmp = group.cases();
// }
// volatile auto tmp = group.cases();
// volatile auto ret = klotski::group::Group_extend(src, 0);

4
src/core/group/internal/group.cc

@ -51,7 +51,7 @@ KLSK_NOINLINE static RangesUnion group_extend(RawCode seed, const size_t reserve
core.next_cases(curr, cases.find(curr)->second);
}
std::cout << std::format("[{}, {}, {}]\n", codes.size(), mirrors.size(), cases.size());
// std::cout << std::format("[{}, {}, {}]\n", codes.size(), mirrors.size(), cases.size());
// std::cout << std::format("{:.5f}\n", static_cast<double>(codes.size()) / reserve);
@ -108,7 +108,7 @@ static RangesUnion extend_type_x(RawCode seed, size_t reserve) {
RangesUnion Group::cases() const {
if (const auto gu = GroupUnion::unsafe_create(type_id()); gu.group_num() == 1) {
std::cout << "[]" << std::endl;
// std::cout << "[]" << std::endl;
return gu.cases();
}

26
src/core/main.cc

@ -58,20 +58,28 @@ int main() {
// auto kk = group.cases();
// std::cout << kk.size() << std::endl;
// constexpr auto group = Group::create(89, 0, Group::Toward::A).value();
// std::println("{}: {}", group.to_string(), group.size());
// volatile auto kk = group.cases();
// constexpr auto group_union = GroupUnion::unsafe_create(89);
// std::println("{}: {}", group_union.unwrap(), group_union.size());
// volatile auto pp = group_union.cases();
// for (auto kk : group_union.groups()) {
// std::println("{}: {}", kk.to_string(), kk.size());
// }
for (int type_id = 0; type_id < TYPE_ID_LIMIT; ++type_id) {
for (auto group : GroupUnion::unsafe_create(type_id).groups()) {
// if (group.is_horizontal_mirror()) {
// if (group.is_vertical_mirror()) {
// if (group.mirror_type() == Group::MirrorType::Horizontal) {
// if (group.mirror_type() == Group::MirrorType::Vertical) {
// if (group.mirror_type() == Group::MirrorType::Centro) {
// if (group.mirror_type() == Group::MirrorType::Full) {
if (group.mirror_type() == Group::MirrorType::Horizontal) {
// if (group.mirror_type() == Group::MirrorType::Centro) {
// if (group.mirror_type() == Group::MirrorType::Vertical) {
// if (group.mirror_type() == Group::MirrorType::Ordinary) {
// std::cout << std::format("{} ({})\n", group.to_string(), group.size());
std::cout << std::format("{}: ", group.to_string());
// std::println("{} ({})", group.to_string(), group.size());
volatile auto kk = group.cases();
// std::cout << group.size() << std::endl;
// }
}
}
}

Loading…
Cancel
Save