Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OCCT RTTI reorganization #146

Open
dpasukhi opened this issue Nov 4, 2024 · 0 comments
Open

OCCT RTTI reorganization #146

dpasukhi opened this issue Nov 4, 2024 · 0 comments
Labels
1. Foundation Classes Containers, system calls wrappers, smart pointers and other low level of OCCT code 2. Enhancement New feature or request

Comments

@dpasukhi
Copy link
Member

dpasukhi commented Nov 4, 2024

Category

Foundation Classes

Description

OCCT RTTI looks like have an additional resource for mutex and real-time loading and processing.
Especially OCCT RTTI impact on multithreading processing.
Need to analyze impact and in non-relevant result replace OCCT RTTI by Dynamic cast and std::type_info operations.
Original issue : https://tracker.dev.opencascade.org/view.php?id=33646
_
Additionally after reorganization of Standard_Type as a part of 7.8.0 there is a problem with releasing type_info objects.
Needs to prepare patch to avoid crash (issue https://tracker.dev.opencascade.org/view.php?id=33656)

Use Case

Improved performance with avoiding blocking operation or string conversion.
Avoiding keeping typeinfo string and at the same time OCCT type name definition.

Benefits

Increased performance.
Decreased library size.
Decreased the code size with maintaining double RTTI (STD and OCCT)

Additional Context

No response

@dpasukhi dpasukhi added 2. Enhancement New feature or request 1. Foundation Classes Containers, system calls wrappers, smart pointers and other low level of OCCT code labels Nov 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1. Foundation Classes Containers, system calls wrappers, smart pointers and other low level of OCCT code 2. Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant