This commit is contained in:
2026-08-12 09:45:18 +08:00
parent 9331b4cbf6
commit 0910b73ea4
22 changed files with 439 additions and 98 deletions
+15 -1
View File
@@ -81,7 +81,21 @@ struct Type_Descriptor<renderive::Frame_Observer_Snapshot> {
ADMINIVE_FIELD_LABEL(T, render_state_wait_ns, "Render State 等待"),
ADMINIVE_FIELD_LABEL(T, render_finish_state_wait_ns, "Render Finish 等待"),
ADMINIVE_FIELD_LABEL(T, queue_wait_ns, "回放队列等待"),
ADMINIVE_FIELD_LABEL(T, end_to_end_ns, "端到端延迟"))
ADMINIVE_FIELD_LABEL(T, end_to_end_ns, "端到端延迟"),
ADMINIVE_FIELD_LABEL(T, task_execution_state, "任务执行状态")
.enum_label<Task_Execution_State::Idle>("空闲")
.enum_label<Task_Execution_State::Queued>("已排队")
.enum_label<Task_Execution_State::Running>("执行中")
.enum_label<Task_Execution_State::Completed>("已完成")
.enum_label<Task_Execution_State::Failed>("失败"),
ADMINIVE_FIELD_LABEL(T, task_worker_count, "Taskflow 工作线程"),
ADMINIVE_FIELD_LABEL(T, task_graph_node_count, "任务图节点"),
ADMINIVE_FIELD_LABEL(T, task_completed_node_count, "已完成节点"),
ADMINIVE_FIELD_LABEL(T, task_running_node_count, "运行中节点"),
ADMINIVE_FIELD_LABEL(T, task_pending_node_count, "待执行节点"),
ADMINIVE_FIELD_LABEL(T, task_peak_parallelism, "峰值并行度"),
ADMINIVE_FIELD_LABEL(T, task_failed_node_count, "失败节点"),
ADMINIVE_FIELD_LABEL(T, task_graph_duration_ns, "任务图耗时"))
.label("Kernel Observer");
}
};
+15 -1
View File
@@ -85,7 +85,7 @@ adminive::Table_View action_view();
namespace adminive {
template <>
struct Type_Descriptor<renderive::web::gallery_detail::Case_Model> {
struct <renderive::web::gallery_detail::Case_Model> {
static auto get() {
using T = renderive::web::gallery_detail::Case_Model;
return object<T>("renderive_gallery_case",
@@ -312,6 +312,20 @@ Json dashboard_contract() {
std::move(point_pair), std::move(bottleneck),
described_dashboard_field<renderive::Frame_Observer_Snapshot>(
"kernel_observer", "last_event"),
described_dashboard_field<renderive::Frame_Observer_Snapshot>(
"kernel_observer", "task_execution_state"),
described_dashboard_field<renderive::Frame_Observer_Snapshot>(
"kernel_observer", "task_worker_count"),
described_dashboard_field<renderive::Frame_Observer_Snapshot>(
"kernel_observer", "task_graph_node_count"),
described_dashboard_field<renderive::Frame_Observer_Snapshot>(
"kernel_observer", "task_running_node_count"),
described_dashboard_field<renderive::Frame_Observer_Snapshot>(
"kernel_observer", "task_pending_node_count"),
described_dashboard_field<renderive::Frame_Observer_Snapshot>(
"kernel_observer", "task_peak_parallelism"),
described_dashboard_field<renderive::Frame_Observer_Snapshot>(
"kernel_observer", "task_graph_duration_ns"),
dashboard_field("像素超时", "client_performance.frame_request_timeout_count"),
dashboard_field("最近像素龄", "client_performance.last_pixel_receive_age_ms", "milliseconds", 0)
})}
+6 -3
View File
@@ -348,7 +348,8 @@ struct Type_Descriptor<renderive::web::Gallery_Time_Axis> {
RENDERIVE_GALLERY_DESCRIPTOR(Gallery_Spectrum, Spectrum_Properties, "spectrum", "Spectrum",
property_number<T, &P::frequency_point_size>("frequency_point_size", "Frequency points"),
property_number<T, &P::partition_count>("partition_count", "Render partitions"),
property_number<T, &P::partition_count>("partition_count", "Render partitions")
.description("0 = automatic, 1 = single task, N = N parallel partitions"),
property_object<T, &P::frequency_range>("frequency_range", "Frequency range"),
property_number<T, &P::center_frequency>("center_frequency", "Center frequency"),
property_object<T, &P::sweep_frequency_range>("sweep_frequency_range", "Sweep range"),
@@ -378,7 +379,8 @@ RENDERIVE_GALLERY_DESCRIPTOR(Gallery_Waterfall, Waterfall_Properties, "waterfall
property_object<T, &P::frequency_range>("frequency_range", "Frequency range"),
property_object<T, &P::power_range>("power_range", "Power range"),
property_number<T, &P::frequency_bin_count>("frequency_bin_count", "Frequency bins"),
property_number<T, &P::partition_count>("partition_count", "Render partitions"),
property_number<T, &P::partition_count>("partition_count", "Render partitions")
.description("0 = automatic, 1 = single task, N = N parallel partitions"),
property_boolean<T, &P::visible_range_only>("visible_range_only", "Visible range only"),
property_select<T, &P::interpolation_mode>("interpolation_mode", "Interpolation"),
property_select<T, &P::color_map>("color_map", "Color map"),
@@ -392,7 +394,8 @@ RENDERIVE_GALLERY_DESCRIPTOR(Gallery_Afterglow, Afterglow_Properties, "afterglow
property_object<T, &P::power_range>("power_range", "Power range"),
property_number<T, &P::frequency_point_size>("frequency_point_size", "Frequency points"),
property_number<T, &P::power_point_size>("power_point_size", "Power points"),
property_number<T, &P::partition_count>("partition_count", "Render partitions"),
property_number<T, &P::partition_count>("partition_count", "Render partitions")
.description("0 = automatic, 1 = single task, N = N parallel partitions"),
property_boolean<T, &P::interpolate>("interpolate", "Interpolate power"),
property_number<T, &P::attenuation_rate>("attenuation_rate", "Attenuation"),
property_select<T, &P::color_map>("color_map", "Color map"));