diff --git a/docs/zh_cn/tutorials/registry.md b/docs/zh_cn/tutorials/registry.md
index f10a3f85364d348fcd7f58607ceaad8d00cbe1fb..2febb6c287bf51aa423112804ee701df85aedf98 100644
--- a/docs/zh_cn/tutorials/registry.md
+++ b/docs/zh_cn/tutorials/registry.md
@@ -210,7 +210,7 @@ conv = MODELS.build(cfg)
 
 MMEngine 的注册器支持跨项目调用,即可以在一个项目中使用另一个项目的模块。虽然跨项目调用也有其他方法的可以实现,但 MMEngine 注册器提供了更为简便的方法。
 
-为了方便跨库调用,MMEngine 提供了 15 个根注册器:
+为了方便跨库调用,MMEngine 提供了 17 个根注册器:
 
 - RUNNERS: Runner 的注册器
 - RUNNER_CONSTRUCTORS: Runner 的构造器
@@ -225,8 +225,10 @@ MMEngine 的注册器支持跨项目调用,即可以在一个项目中使用
 - OPTIMIZERS: 注册了 PyTorch 中所有的 `optimizer` 以及自定义的 `optimizer`
 - OPTIMIZER_CONSTRUCTORS: optimizer 的构造器
 - PARAM_SCHEDULERS: 各种参数调度器, 如 `MultiStepLR`
-- TASK_UTILS: 任务强相关的一些组件,如 `AnchorGenerator`, `BboxCoder`
 - EVALUATORS: 用于验证模型精度的评估器
+- TASK_UTILS: 任务强相关的一些组件,如 `AnchorGenerator`, `BboxCoder`
+- VISUALIZERS: 管理绘制模块,如 `DetVisualizer` 可在图片上绘制预测框
+- WRITERS: 存储训练日志的后端,如 `LocalWriter`, `TensorboardWriter`
 
 下面我们以 OpenMMLab 开源项目为例介绍如何跨项目调用模块。
 
diff --git a/mmengine/registry/root.py b/mmengine/registry/root.py
index 36958fa4b2534f8ea6906a8081fc1cb6f275a65e..d692acc18e231f4104f6f03f61244c8ed62f9f59 100644
--- a/mmengine/registry/root.py
+++ b/mmengine/registry/root.py
@@ -35,12 +35,12 @@ OPTIMIZERS = Registry('optimizer')
 OPTIMIZER_CONSTRUCTORS = Registry('optimizer constructor')
 # mangage all kinds of parameter schedulers like `MultiStepLR`
 PARAM_SCHEDULERS = Registry('parameter scheduler')
+# manage all kinds of evaluators for computing metrics
+EVALUATORS = Registry('evaluator')
 
 # manage task-specific modules like anchor generators and box coders
 TASK_UTILS = Registry('task util')
 
-# manage all kinds of evaluators for computing metrics
-EVALUATORS = Registry('evaluator')
 # manage visualizer
 VISUALIZERS = Registry('visualizer')
 # manage writer