MCPcopy Create free account
hub / github.com/baidu/babylon

github.com/baidu/babylon @v1.4.4

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.4.4 ↗ · + Follow
2,316 symbols 5,339 edges 249 files 159 documented · 7% updated 4mo agov1.4.4 · 2025-09-21★ 64616 open issues

Browse by type

Functions 1,729 Types & classes 587
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

[English]

Babylon

CI Coverage Status

Babylon是一个用于支持C++高性能服务端开发的基础库,从内存和并行管理角度提供了大量的基础组件。广泛应用在对性能有严苛要求的场景,典型例如搜索推荐引擎,自动驾驶车载计算等场景

核心功能

  • 高效的应用级内存池机制
  • 兼容并扩展了std::pmr::memory_resource机制
  • 整合并增强了google::protobuf::Arena机制
  • 在对象池结合内存池使用的情况下提供了保留容量清理和重建的机制
  • 组件式并行计算框架
  • 基于无锁DAG推导的高性能自动组件并行框架
  • 依照执行流天然生成数据流管理方案,复杂计算图场景下提供安全的数据竞争管理
  • 微流水线并行机制,提供上限更好的并行化能力
  • 并行开发基础组件
  • wait-free级别的并发安全容器(vector/queue/hash_table/...)
  • 可遍历的线程缓存开发框架
  • 可扩展支持线程/协程的同步原语(future/mutex/...)
  • 应用/框架搭建基础工具
  • IOC组件开发框架
  • C++对象序列化框架
  • 零拷贝/零分配异步日志框架

编译并使用

支持平台和编译器

  • OS: Linux
  • CPU: x86-64/aarch64
  • COMPILER: gcc/clang

Bazel

Babylon使用Bazel进行构建并使用bzlmod进行依赖管理,考虑到目前Bazel生态整体处于bzlmod的转换周期,Babylon也依然兼容workspace依赖管理模式

CMake

Babylon也支持使用CMake进行构建,并支持通过find_packageadd_subdirectoryFetchContent进行依赖引入

模块功能文档

整体设计思路

如何贡献

如果你遇到问题或需要新功能,欢迎创建issue。

如果你可以解决某个issue, 欢迎发送PR。

发送PR前请确认有对应的单测代码。

致谢

文心快码源力计划标志

Core symbols most depended-on inside this repo

Shape

Method 1,393
Class 580
Function 336
Enum 7

Languages

C++100%

Modules by API surface

src/babylon/application_context.h57 symbols
src/babylon/anyflow/data.hpp57 symbols
src/babylon/concurrent/transient_hash_table.hpp52 symbols
src/babylon/concurrent/bounded_queue.hpp47 symbols
test/anyflow/test_processor.cpp46 symbols
src/babylon/type_traits.h45 symbols
src/babylon/string_view.hpp45 symbols
src/babylon/concurrent/vector.hpp44 symbols
src/babylon/anyflow/builtin/expression.cpp44 symbols
src/babylon/serialization/traits.hpp42 symbols
src/babylon/reusable/allocator.hpp39 symbols
src/babylon/coroutine/promise.h35 symbols

For agents

$ claude mcp add babylon \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page