Skip to content

unable to fully utilize multiple cores in async mode #51

@ouvaa

Description

@ouvaa

Describe the bug

  1. for async mode, not technically a bug but i'm having max 1,500,000 req/s on my 12 core amd laptop ubuntu 22.04

if i put 2 instances, it will basically halved at 750000 req/s each and 3 instances uses 500,000 req/s etc.

how to push for max req/s using multiple instances?

also getting this error after running for a long time with multiple instances where by ram is showing 0.0% usage using top -c

pls suggest ways to workaround the issues.

Warn 2024-04-04 20:02:46.910525 stream.go:257 server session stream fallback seqID:24 len:1043 reason:share memory not more buffer, sendBuf.isFromShareMemory: true
  1. also, for sync mode, trying to use multiple cores of golang. how to make this possible? i tried to run multiple server instances inside 1 golang program by having 1 go routine listening to 1 uds socket per cpu core but it doesnt seem possible. possible to show the code of how to do so?

1 goroutine per cpu core running listening in as server

many clients sending to different uds socket per core of the server

To Reproduce
commenting
//runtime.GOMAXPROCS(1)
in
shmipc_server example

Expected behavior
able to use multiple core

Environment:
ubuntu 22.04 go 1.22

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions