AI自我审查 第一次修改完成

This commit is contained in:
2026-07-30 23:13:31 +08:00
parent 13ca0f3141
commit 712c26a4f9
99 changed files with 664 additions and 2397 deletions
+8 -18
View File
@@ -85,14 +85,9 @@ private:
renderive::Frame_Lifecycle_Record frame;
frame.frame_id = config.id * 1000000 + ++next_frame_id;
frame.input_version = latest_input_version;
frame.snapshot_version = latest_input_version;
frame.frame_slot_generation = next_frame_id;
frame.core_data_time = latest_input_time;
frame.source_data_time_begin = latest_input_time;
frame.source_data_time_end = latest_input_time;
frame.render_request_time = latest_input_time;
frame.snapshot_capture_begin_time = now;
frame.snapshot_capture_end_time = now;
frame.render_queue_enter_time = now;
frame.prepare_begin_time = now;
frame.prepare_end_time = now;
@@ -229,7 +224,7 @@ void validate_performance_log(const QString& log_path) {
std::vector<QString> lines = wait_log_lines(log_path, 8);
ASSERT_GT(lines.size(), 1);
const QString& header = lines.front();
EXPECT_TRUE(header.startsWith("frame_id,input_version,snapshot_version,slot_generation,outcome,bottleneck"));
EXPECT_TRUE(header.startsWith("frame_id,input_version,slot_generation,outcome,bottleneck"));
EXPECT_FALSE(header.contains("policy"));
expect_header_field(header, "production_fps");
expect_header_field(header, "display_fps");
@@ -254,8 +249,8 @@ TEST(Frame_Scheduler_Feedback, KeepsPerformanceShowerInputRingBounded) {
frame.frame_id = frame_id;
input.push(frame);
}
EXPECT_EQ(input.get_pending_count(), renderive::Performance_Shower_Input_Data::Capacity);
EXPECT_EQ(input.get_capacity_dropped_count(), 8);
EXPECT_EQ(input.count, renderive::Performance_Shower_Input_Data::Capacity);
EXPECT_EQ(input.capacity_dropped, 8);
std::vector<std::uint64_t> frame_ids;
input.read_all([&frame_ids](const renderive::Frame_Lifecycle_Record& frame) {
frame_ids.push_back(frame.frame_id);
@@ -264,7 +259,7 @@ TEST(Frame_Scheduler_Feedback, KeepsPerformanceShowerInputRingBounded) {
EXPECT_EQ(frame_ids.front(), 9);
EXPECT_EQ(frame_ids.back(), 72);
input.request_reset();
EXPECT_EQ(input.get_pending_count(), 0);
EXPECT_EQ(input.count, 0);
EXPECT_TRUE(input.reset_pending);
}
TEST(Frame_Scheduler_Feedback, AggregatesRenderableCacheStats) {
@@ -275,18 +270,14 @@ TEST(Frame_Scheduler_Feedback, AggregatesRenderableCacheStats) {
frame.record_renderable_self_draw("root", {}, 0, renderive::Renderable_Cache_Mode::Direct, 300);
frame.record_renderable_render("cache_b", "cache_a", 1, renderive::Renderable_Cache_Mode::Local_Pixel, 2000);
frame.record_renderable_cache_hit("cache_a", {}, 0);
frame.record_renderable_cache_stale_hit("cache_a", {}, 0);
frame.record_renderable_cache_miss("cache_b", "cache_a", 1);
frame.record_renderable_cache_rebuild("cache_b", "cache_a", 1, 1000, 4096, 1024, 3, 3, false, true);
frame.record_renderable_cache_rebuild("cache_a", {}, 0, 2000, 2048, 512, 4, 4, true, false);
frame.record_renderable_cache_rebuild("cache_b", "cache_a", 1, 1000, 4096, 1024, 3, 3);
frame.record_renderable_cache_rebuild("cache_a", {}, 0, 2000, 2048, 512, 4, 4);
frame.record_renderable_cache_compose("cache_a", {}, 0, 300, 2048, 512, 4, 4);
frame.record_renderable_cache_compose("cache_b", "cache_a", 1, 700, 4096, 1024, 3, 3);
EXPECT_EQ(frame.renderable_cache_hit_count, 1);
EXPECT_EQ(frame.renderable_cache_stale_hit_count, 1);
EXPECT_EQ(frame.renderable_cache_miss_count, 1);
EXPECT_EQ(frame.renderable_cache_rebuild_count, 2);
EXPECT_EQ(frame.renderable_cache_stale_rebuild_count, 1);
EXPECT_EQ(frame.renderable_cache_miss_rebuild_count, 1);
EXPECT_EQ(frame.renderable_cache_rebuild_time_ns, 3000);
EXPECT_EQ(frame.renderable_cache_compose_time_ns, 1000);
ASSERT_EQ(frame.renderable_stats.size(), 2);
@@ -304,7 +295,6 @@ TEST(Frame_Scheduler_Feedback, AggregatesRenderableCacheStats) {
EXPECT_GT(aggregate.renderable_stats[0].self_draw_ms.times, 0);
EXPECT_GT(aggregate.renderable_stats[1].total_render_ratio.times, 0);
EXPECT_EQ(aggregate.cache_hit_count, 1);
EXPECT_EQ(aggregate.cache_stale_hit_count, 1);
EXPECT_EQ(aggregate.cache_miss_count, 1);
EXPECT_EQ(aggregate.cache_rebuild_count, 2);
EXPECT_EQ(aggregate.cache_rebuild_time_ns, 3000);
@@ -318,8 +308,8 @@ TEST(Frame_Scheduler_Feedback, AggregatesRenderableCacheStats) {
EXPECT_GT(aggregate.cache_compose_ms.times, 0);
EXPECT_GT(aggregate.cache_rebuild_ratio.times, 0);
EXPECT_GT(aggregate.cache_compose_ratio.times, 0);
EXPECT_EQ(aggregate.renderable_cache_stats[0].last_subtree_compose_time_ns, 1000);
EXPECT_EQ(aggregate.renderable_cache_stats[1].last_subtree_compose_time_ns, 700);
EXPECT_EQ(aggregate.renderable_cache_stats[0].subtree_compose_time_ns, 1000);
EXPECT_EQ(aggregate.renderable_cache_stats[1].subtree_compose_time_ns, 700);
EXPECT_GT(aggregate.renderable_cache_stats[0].subtree_compose_ms.times, 0);
}
TEST(Frame_Scheduler_Feedback, ClassifiesFourBottlenecksAndWritesUsableLog) {