Skip to content

[PERFORMANCE] [BUG] @EntityId Annotation creates a lot of garbage over time #654

@BambooBandit

Description

@BambooBandit

I noticed that after adding the @EntityID annotation to this component class

final public class EntityClusterChildCom extends Component
{
    @EntityId public int parentID;
    public boolean top;
}

my game started to generate a lot of garbage, inducing a GC once per minute.
javaw_eJ4kH8oCSl

When I removed the annotation, the GC's dropped down to occuring .13 times per minute
javaw_7AquySKgaN

visualVM says that all the garbage is Integer
javaw_7Od7eScv6K

This behavior seems strange and unintentional, so I thought I would let y'all know.
For reference, this component is created 18949 times, Artemis version 2.3.0.

EDIT
I think i boiled the issue down to this specific line of code.


Is there anything that can be done to remove this typecasting?

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions