[
https://issues.apache.org/jira/browse/FLINK-21375?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17288184#comment-17288184
]
Xintong Song commented on FLINK-21375:
--------------------------------------
[~ykt836], thanks for the pointer.
This might indeed be a problem that, with FLINK-21417 merged, multiple
implementations of {{MemorySegment}} can be loaded, which disables JIT
optimizations.
I think we should measure the performance differences before & after the
changes. We may need to revert the changes if there's indeed a significant
regression.
Moreover, {{RawFormatSerializationSchema}} has been using {{HeapMemorySegment}}
before our changes, which may also cause multiple implementations of
{{MemorySegment}} being loaded. If we're reverting the changes, we should also
migrate those use cases to {{HybridMemorySegment}}, and maybe remove
{{HeapMemorySegment}} to avoid unexpected usages in future.
> Refactor HybridMemorySegment
> ----------------------------
>
> Key: FLINK-21375
> URL: https://issues.apache.org/jira/browse/FLINK-21375
> Project: Flink
> Issue Type: Task
> Components: Runtime / Coordination
> Reporter: Xintong Song
> Assignee: Xintong Song
> Priority: Major
> Fix For: 1.13.0
>
>
> Per the discussion in [this PR|https://github.com/apache/flink/pull/14904],
> we plan to refactor {{HybridMemorySegment}} as follows.
> * Separate into memory type specific implementations: heap / direct / native
> (unsafe)
> * Remove {{wrap()}}, replacing with {{processAsByteBuffer()}}
> * Remove native memory cleaner logic
--
This message was sent by Atlassian Jira
(v8.3.4#803005)