Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Register
  • Sign in
  • L linux
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • Deployments
    • Deployments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • Kirill Smelkov
  • linux
  • Repository
  • linux
  • include
  • linux
  • objpool.h
Find file BlameHistoryPermalink
  • wuqiang.matt's avatar
    lib: objpool added: ring-array based lockless MPMC · b4edb8d2
    wuqiang.matt authored Oct 17, 2023
    objpool is a scalable implementation of high performance queue for
    object allocation and reclamation, such as kretprobe instances.
    
    With leveraging percpu ring-array to mitigate hot spots of memory
    contention, it delivers near-linear scalability for high parallel
    scenarios. The objpool is best suited for the following cases:
    1) Memory allocation or reclamation are prohibited or too expensive
    2) Consumers are of different priorities, such as irqs and threads
    
    Limitations:
    1) Maximum objects (capacity) is fixed after objpool creation
    2) All pre-allocated objects are managed in percpu ring array,
       which consumes more memory than linked lists
    
    Link: https://lore.kernel.org/all/20231017135654.82270-2-wuqiang.matt@bytedance.com/
    
    
    
    Signed-off-by: default avatarwuqiang.matt <wuqiang.matt@bytedance.com>
    Acked-by: default avatarMasami Hiramatsu (Google) <mhiramat@kernel.org>
    Signed-off-by: default avatarMasami Hiramatsu (Google) <mhiramat@kernel.org>
    b4edb8d2
GitLab Nexedi Edition | About GitLab | About Nexedi | 沪ICP备2021021310号-2 | 沪ICP备2021021310号-7