You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Uwe Schindler (Jira)" <ji...@apache.org> on 2021/09/28 16:02:00 UTC

[jira] [Comment Edited] (LUCENE-10129) Add RamUsageEstimator shallowSizeOf(long[]) overload that just calls sizeOf(long[])?

    [ https://issues.apache.org/jira/browse/LUCENE-10129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17421481#comment-17421481 ] 

Uwe Schindler edited comment on LUCENE-10129 at 9/28/21, 4:01 PM:
------------------------------------------------------------------

Can we also do someting for reference arrays? shallowSizeOf(Object[]) is not possible because most arrays are not compatible. We may use generics as trick: {{static <T> int shallowSizeOf(T[])}}

This may speedup the related issue further: LUCENE-10128 (it has a long[][] bits, which is an array of refrences to long[] arrays).


was (Author: thetaphi):
Can we also do someting for reference arrays? shallowSizeOf(Object[]) is not possible because most arrays are not compatible. We may use generics as trick: {{static <T> int shallowSizeOf(T[])}}

This may speedup the related issue further:

> Add RamUsageEstimator shallowSizeOf(long[]) overload that just calls sizeOf(long[])?
> ------------------------------------------------------------------------------------
>
>                 Key: LUCENE-10129
>                 URL: https://issues.apache.org/jira/browse/LUCENE-10129
>             Project: Lucene - Core
>          Issue Type: Task
>            Reporter: Robert Muir
>            Priority: Major
>
> See LUCENE-10128 for an example. The problem is there is only a {{sizeOf(long[])}}, so if the programmer uses {{shallowSizeOf}} instead of {{sizeOf}} then it falls back to {{shallowSizeOf(Object)}} which does a bunch of reflection.
> This is pretty crazy because it can create performance traps. Should we just add a {{shallowSizeOf(long[])}} that calls {{sizeOf(long[])}}, so that things are fast? (same for other primitive arrays). It would solve the problem easily I think.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org