Skip to content

SignalTuple memory allocations #182

@ghost

Description

The following screenshot shows the memory allocations against the Gen 1 GC:

signal-tuple-1

The method getAllPossibleTuples is creating 19 instances of SignalTuple for every message. Our application receives 64 messages per second, resulting in 1,216 objects per second. This stresses the GC.

public static Set<SignalTuple> getAllPossibleTuples(String _type, String _name, String _object, String _source){

When the GC runs, it needs to free 600 to 700 kB of SignalTuple instances from memory.

Here's a screenshot of the GC sawtooth:

dbus-heap

Is it possible to cache these so that they are only created once?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions